以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  提取两表不重复“年月”到另一表中  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=132802)

--  作者:yfy13338431925
--  发布时间:2019/3/29 23:02:00
--  提取两表不重复“年月”到另一表中

甜老师,蓝老师:下面的问题如何解决?

 

表A有时间列

【第一列】

2000-11-11

2012-11-11

2013-12-12

表B有时间列

【第二列】

1988-08-02

2000-11-11

2001-11-14

2012-11-11

2012-11-30

2012-10-11

2013-12-12

以上相同颜色(除黑色外)的是重复值

提取两表不重复“年月”(不管日,只到月)时间到表C【第三列】

【第三列】

1988-08

2001-11

2012-10

 

 

[此贴子已经被作者于2019/3/29 23:02:20编辑过]

--  作者:有点蓝
--  发布时间:2019/3/29 23:13:00
--  
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.CommandText = "SELECT DISTINCT 年月 From (select year(第一列)+\'-\' + month(第一列) as 年月 from {表A}  union select year(第二列)+\'-\' + month(第二列) as 年月 from {表B}) as a"
dt = cmd.ExecuteReader()
For Each dr As DataRow In dt.datarows
    Dim r As Row = Tables("表C").addnew
    r("第三列") = dr("年月")
Next

--  作者:yfy13338431925
--  发布时间:2019/3/30 0:08:00
--  
蓝老师运行没动静
--  作者:有点蓝
--  发布时间:2019/3/30 8:48:00
--  
cmd.CommandText = "SELECT DISTINCT 年月 From (select cstr(year(第一列))+\'-\' + cstr(month(第一列)) as 年月 from {表A} where 第一列 is not null  union select cstr(year(第二列)) +\'-\' + cstr(month(第二列)) as 年月 from {表B} where 列 is not null) as a"