TSQL:两个表的组合

时间:2018-11-27 11:15:20

标签: tsql

我有2张桌子

A

EmpID IDcard  Date
xxx   111     2018-10-01
zzz   111     2018-05-01

B

Idcard AgrNumb Date
111    x46     2018-10-01
111    x35     2018-05-01
111    x20     2017-12-01
111    x42     2018-08-01

我想创建一个表,其中第一行有一行,第二个表有一行。第二个表中的行应是第一行,该行应比第一行中的日期小。它应该是这样的:

身份证日期

111 2018-10-01 --> table A
111 2018-08-01 --> table B
111 2018-05-01 --> table A
111 2017-12-01 --> table B

我不知道该怎么做。你能帮我吗?

1 个答案:

答案 0 :(得分:0)

您可以尝试(如果在sql-server中):

        Select T2.*, EmpID  from Table1 T1
        outer apply(
         select t2_in.idCard, min(date) as DateT2
         from table2 t2_in 
         where t2_in.idCard = t1.IDcard
         group by t2_in.idCard
        )t2