SQL Server 小于或等于 (<=) date not including last date

问题描述 投票:0回答:1

我有一个看似简单但奇怪的发现。当我使用时:

WHERE DateTime >= '2024-04-01' AND DateTime <= '2024-04-30'

上面只给了我 04/29 的时间,而不是 04/30 的时间

WHERE DateTime >= '2024-04-01' AND DateTime < '2024-04-30'

这也只给我到 04/29,而不是 04/30\

*而且绝对不是因为04/30没有任何数据,否则就不用费心发帖了。 当我编辑 WHERE to

时出现 04/30
AND DateTime < '2024-05-01'

同样如果我使用<= '2024-05-01', it also gives me up to 04/30 but not 05/01

这很奇怪,为什么<= treated the same way as

谢谢!

sql date comparator
1个回答
0
投票

它们不一样。使用时<= the value 2024-04-30 is only included if you have a DateTime value of '2024-04-30 00:00:00' exactly. Using < will exclude 2024-04-30 completely. See also 如何将日期时间与 SQL Server 中的日期进行比较

© www.soinside.com 2019 - 2024. All rights reserved.