我在 sql server 中有一个具有以下架构的表。
**ID Title ActiveFromDate ActiveToDate**
1 Test 2013-07-06 2013-08-22
2 Test 2013-07-01 2013-07-30
我想通过 ActiveFromDate 和 Active ToDate 选择记录,即选择所有在特定日期范围之间的记录。
SELECT ISNULL(COUNT(*),0) AS Total, dbo.ArrangementPromotion.Title
FROM dbo.ArrangementPromotion
WHERE(
(dbo.ArrangementPromotion.ActiveFromDate BETWEEN '2013-08-01' AND '2013-08-14')
OR (dbo.ArrangementPromotion.ActiveToDate BETWEEN '2013-08-01' AND '2013-08-14' )
)
AND dbo.ArrangementPromotion.Inactive = 0
AND dbo.ArrangementPromotion.Deleted = 0
AND(12 IS NOT NULL OR dbo.ArrangementPromotion.ID <> 12 )
GROUP BY dbo.ArrangementPromotion.Title
但是如果参数@ActiveToDate 中的日期小于表Active ToDate,我不会得到想要的结果。任何机构都可以帮助我。
谢谢