以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]多表引用 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=157448) |
-- 作者:huaziqiao1976 -- 发布时间:2020/10/16 12:01:00 -- [求助]多表引用 想实现加载外表后,找出zjhm列和“信息比对“表中身份证号列相同的所有行,然后将筛选出的数据生成到股金客户信息表中去,出现的问题无响应 Dim cmd1 As New SQLCommand cmd1.C Dim dt1 As DataTable Dim Cols1() As String = {"f_zh","f_hm","f_zjhm"} Dim Cols2() As String = {"账号","户名","身份证号"} cmd1.CommandText = "SE*LECT * From {tb_ckzhxx}" dt1 = cmd1.ExecuteReader() For Each dr1 As DataRow In dt1.DataRows For Each dr2 As DataRow In DataTables("信息比对").datarows If DataTables("tb_ckzhxx").Find("f_zjhm = \'" & dr2("身份证号") &"\'") Is Nothing Then Dim dr3 As DataRow = DataTables("股金客户信息").AddNew() For i1 As Integer = 0 To Cols1.Length -1 dr3(Cols2(i1)) = dr1(Cols1(i1)) Next End If Next Next
|
-- 作者:有点蓝 -- 发布时间:2020/10/16 12:11:00 -- Dim cmd1 As New SQLCommand cmd1.C Dim dt1 As DataTable Dim Cols1() As String = {"f_zh","f_hm","f_zjhm"} Dim Cols2() As String = {"账号","户名","身份证号"} cmd1.CommandText = "SELECT * From {tb_ckzhxx} where f_zjhm in (select 身份证号 from {信息比对})" dt1 = cmd1.ExecuteReader() For Each dr1 As DataRow In dt1.DataRows Dim dr3 As DataRow = DataTables("股金客户信息").AddNew() For i1 As Integer = 0 To Cols1.Length -1 dr3(Cols2(i1)) = dr1(Cols1(i1)) Next Next
|
-- 作者:huaziqiao1976 -- 发布时间:2020/10/16 12:29:00 -- 蓝版,信息比对表不是外表 |
-- 作者:有点蓝 -- 发布时间:2020/10/16 13:35:00 -- cmd1.CommandText = "SELECT * From {tb_ckzhxx} where f_zjhm in (\'" & DataTables("信息比对").GetComboListString("身份证号").Replace("|","\',\'") & "\')" |
-- 作者:huaziqiao1976 -- 发布时间:2020/10/16 14:24:00 -- 谢谢蓝版,又学到一个很实用的代码 |