请先检查我的桌子。我的第一个表名为DinasHoHeader
:
Kode Desc startdate enddate
1 Desc 1 2016-11-08 2016-11-08
2 Desc 2 2016-11-16 2016-11-16
,第二个表名为CutOff
CutOffCode Month Year from to
CO-2016-10-16-15 10 2016 2016-09-16 2016-10-15
CO-2016-11-16-15 11 2016 2016-10-16 2016-11-15
CO-2016-12-16-15 12 2016 2016-11-16 2016-12-15
我想加入这两个。这是我尝试的
SELECT a.*, b.CutOffCode
FROM DinasHoHeader a
LEFT JOIN CutOff b ON b.[From] BETWEEN a.[startdate] AND a.enddate
AND b.[to] BETWEEN a.[startdate] AND a.enddate
但是根据我的查询,我无法获得CutOffCode
。
所以我的问题是:如何加入这两个表,以便我可以获得cutoffcode
?
抱歉我的英语不好。
答案 0 :(得分:3)
我认为你的逻辑是倒退的:
select dhh.*, co.CutOffCode
from DinasHoHeader dhh left join
CutOff co
on dhh.[startdate] between co.[From] and co.[to] and
dhh.[enddate] between co.[From] and co.[to];
至少应该有一些匹配。