以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 如何实现多表表结构不相同合并在一表数据不重复? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=185887) |
|
-- 作者:lin98 -- 发布时间:2023/3/23 15:16:00 -- 如何实现多表表结构不相同合并在一表数据不重复? 如何实现多表表结构不相同合并在一表数据不重复?如图 上面代码无法实现,如何做才能实现
[此贴子已经被作者于2023/3/23 17:28:25编辑过]
|
|
-- 作者:有点蓝 -- 发布时间:2023/3/23 15:21:00 -- For i As Integer = 0 To Vals.Count - 1 Dim dr As DataRow = DataTables("表D").find("产品编号=\'" & Vals(i)(0) & "\'") if dr is nothing then dr = DataTables("表D").AddNew() dr("产品编号") = Vals(i)(0)end if dr("产品编号") = Vals(i)(0) dr("品名") = Vals(i)(1) dr("表A数量") = Vals(i)(2) Next
|
|
-- 作者:lin98 -- 发布时间:2023/3/23 16:07:00 --
|
|
-- 作者:有点蓝 -- 发布时间:2023/3/23 16:17:00 -- 代码没有问题,请上传实例测试 |
|
-- 作者:lin98 -- 发布时间:2023/3/23 16:32:00 -- [此贴子已经被作者于2023/3/23 17:27:42编辑过]
|
|
-- 作者:lin98 -- 发布时间:2023/3/23 16:33:00 -- 测试几次,还是有漏数据 |
|
-- 作者:有点蓝 -- 发布时间:2023/3/23 16:37:00 -- Dim Vals2 As List(Of String()) Vals2 = DataTables("表C").GetValues("产品编号|品名|数量") For i As Integer = 0 To Vals2 .Count - 1
|
|
-- 作者:y2287958 -- 发布时间:2023/3/23 17:21:00 -- Dim bm As String = "表D1" Dim jba As New SQLJoinTableBuilder(bm, "表A") jba.AddCols("产品编号", "品名", "数量 as 表A数量") Dim da As fxDataSource = jba.BuildDataSource() Dim jbb As New SQLJoinTableBuilder(bm, "表B") jbb.AddCols("产品编号", "品名", "数量 as 表B数量") Dim jbc As New SQLJoinTableBuilder(bm, "表C") jbc.AddCols("产品编号", "品名", "数量 as 表C数量") Dim Cols As String = "产品编号|品名" da.Combine(Cols.split("|"), jbb.BuildDataSource(), Cols.split("|")) da.Combine(Cols.split("|"), jbc.BuildDataSource(), Cols.split("|")) da.Show(bm)
[此贴子已经被作者于2023/3/23 17:21:43编辑过]
|