我2桌: 启用 禁用
每个表都与DateId绑定到存储日期的日期表。
如何编写查询以便我可以在禁用表中获取在启用表中有条目的1,2或3天内禁用的行?
感谢您的帮助
答案 0 :(得分:6)
使用DATEDIFF
!它工作得很好,并返回日期差异。
select
*
from
disable d
inner join enable e on
d.Id = e.Id
where
datediff(day, e.DateId, d.DateId) between 1 and 3
您也可以根据自己的喜好使用它。 DATEDIFF
也可以倒退,所以你可以datediff(day, d.DateId, e.DateId) between -3 and -1
,如果这让你感到满意。