以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 提取多表指定列不重复员工工号 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=153290) |
-- 作者:zhuxinhui -- 发布时间:2020/8/6 11:01:00 -- 提取多表指定列不重复员工工号 Dim s As Table = Tables("增减") For i As Integer = 0 To s.Rows.count-1 Dim b1 As String = s.Rows(i)("工号") Dim dr As DataRow Dim dn As DataRow dr = DataTables("工资表").Find("工号 = \'" & b1 & "\'") If dr Is Nothing Then dr = DataTables("工资表").AddNew() dr("工号") = s.Rows(i)("工号") dr("姓名") = s.Rows(i)("姓名") End If Next 提取多表指定列不重复员工工号,现在把上面的代码重复写了N次(一个表重复一次),是否有简单点的法子呢?
|
-- 作者:有点蓝 -- 发布时间:2020/8/6 11:11:00 -- dim str() as string = {"增减","表B"} for each n as string in str Dim s As Table = Tables(n) For i As Integer = 0 To s.Rows.count-1 Dim b1 As String = s.Rows(i)("工号") Dim dr As DataRow Dim dn As DataRow dr = DataTables("工资表").Find("工号 = \'" & b1 & "\'") If dr Is Nothing Then dr = DataTables("工资表").AddNew() dr("工号") = s.Rows(i)("工号") dr("姓名") = s.Rows(i)("姓名") End If Next next 如果会sql,并且不是临时表,直接使用SQL处理: insert into {工资表} (工号,姓名) select 工号,姓名 from {增减} where 工号 not in (select 工号 from {工资表})
|
-- 作者:zhuxinhui -- 发布时间:2020/8/6 11:36:00 -- 近段时间正看着SQL,关于后台统计取数查询的问题,感觉熟用SQL作用很大 |
-- 作者:zhuxinhui -- 发布时间:2020/8/6 11:45:00 -- insert into {工资表} (工号,姓名) select 工号,姓名 from {增减} where 工号 not in (select 工号 from {工资表})使用这个SQL是重复多写几次吗? |
-- 作者:zhuxinhui -- 发布时间:2020/8/6 11:47:00 -- 写代码应该优先考滤使用SQL,使用后台数据,有点蓝老师是不是这样想 |
-- 作者:有点蓝 -- 发布时间:2020/8/6 12:18:00 -- 重复多写几次 |