我有一个小的T-SQL问题,我试图解决,但我似乎无法让它工作。
如何在T-SQL中获取startDate在8月16日到9月19日之间的所有行,无论年份如何?
答案 0 :(得分:1)
SELECT *
FROM tbl
WHERE (MONTH(dt) = 8 AND DAY(dt) >= 16) OR (MONTH(dt) = 9 AND DAY(dt) <= 19)
答案 1 :(得分:0)
对于Sql Server,我将使用以下查询。
select * from (
select *,DATEFROMPARTS(2011,MONTH(CreateDate),DAY(CreateDate)) as dt from tblAction
) as x
where x.dt between
DATEFROMPARTS(2011,3,6) and
DATEFROMPARTS(2011,8,2)
看看它是否有帮助.. :)