我有一个小 T-SQL 问题我正在尝试解决,但我似乎无法让它工作。
如何在 T-SQL 中获取 startDate 介于 8 月 16 日和 9 月 19 日之间的所有行,无论年份如何?
我有一个小 T-SQL 问题我正在尝试解决,但我似乎无法让它工作。
如何在 T-SQL 中获取 startDate 介于 8 月 16 日和 9 月 19 日之间的所有行,无论年份如何?
SELECT *
FROM tbl
WHERE (MONTH(dt) = 8 AND DAY(dt) >= 16) OR (MONTH(dt) = 9 AND DAY(dt) <= 19)
对于 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)
看看有没有帮助..:)