我正在尝试从Tbl1匹配到Tbl2(或下一个更大的匹配)。
条件是
第一个匹配项应是tbl2中的第一个date2大于或等于tbl1中的date1
如果同一日期有多个记录,则应根据tbl2中的RefNO选择下一个更大或相等的日期。
tbl1包含
RecNo ClientNo Date1
-----------------------------
4 1001 2/6/2017
3 1001 2/4/2018
1 1001 2/5/2018
2 1001 2/5/2018
5 1002 3/8/2018
9 1002 3/9/2018
10 1002 4/11/2019
tbl2包含
RecNo ClientNo Date2 RefNo
-----------------------------------
1 1001 2/5/2017 1
4 1001 2/5/2018 2
2 1001 2/5/2018 4
3 1001 2/6/2018 5
5 1002 3/9/2018 1
6 1002 4/10/2019 2
查询结果
RecNoTbl1 ClientNo Date1 RecNoTbl2 Date2 RefNo
---------------------------------------------------------------
4 1001 2/6/2017 4 2/5/2018 2
3 1001 2/4/2018 2 2/5/2018 4
1 1001 2/5/2018 3 2/6/2018 5
2 1001 2/5/2018 NULL NULL NULL
5 1002 3/8/2018 5 3/9/2018 1
9 1002 3/9/2018 6 4/10/2019 2
10 1002 4/11/2019 NULL NULL NULL
我尝试了ROW OVER PARTITION,但是那没用。
答案 0 :(得分:0)
您可以使用像这样的左联接查询
Select tb1.*, tb2.* from table1 tb1
Left join table2 tb2 ON tb1.clientno = tb2.clientno Where tb1.date>=tb2.dare
对于独特的,您可以使用不同的
像这样:select distinct tb1.title
有关与众不同
的更多信息很抱歉,如果事情还没有很详细。我正在通过电话发帖。