我有两个带有以下详细信息的表。
具有开始日期和结束日期列的表1。
具有合格日期的表2。
我想根据表2中的合格日期获得表1的最终结果。
示例:日期为yyyy-mm-dd格式
表1:
startdate enddate
row1 : 2018-01-01 2018-03-31
row2 : 2018-02-01 2018-03-31
row3 : 2018-04-20 2018-06-30
row4 : 2017-07-01 2018-12-31
row5 : 2019-08-01 2020-11-30
表2:
QualifyingDate
row1 : 2018-03-01
row2 : 2018-01-31
row3 : 2018-04-20
row4 : 2018-07-01
row5 : 2018-08-01
表1的最终输出:
row1 : 2018-01-01 2018-03-31 (From table2, row1&row2 falls in between)
row2 : 2018-02-01 2018-03-31 (From table2, row1 falls in between)
row3 : 2018-04-20 2018-06-30 (From table2, row3 falls in between)
row4 : 2017-07-01 2018-12-31 (From table2, row1-row5 falls in between)
请帮助我。
答案 0 :(得分:1)
您似乎想要:
select t1.*
from table1 t1
where exists (select 1
from table2 t2
where t2.QualifyingDate between t1.startdate and t1.enddate
);