【发布时间】:2014-02-26 11:40:37
【问题描述】:
我有一个非常简单的 SQL,可以从日期范围内选择数据。所以,例如,如果我有,
SELECT ...... WHERE PV.[Time] BETWEEN '02/26/2014' AND '02/26/2014'
此 SQL Select 语句未选择 2014 年 2 月 26 日的数据。请帮忙
【问题讨论】:
-
你应该用
CONVERT转换格式 -
好吧 - 有没有时间等于 2014 年 2 月 26 日的行?如果是这样,您的 SQL Server 是否设置为处理该格式的日期?如果您尝试将查询更改为:'20142602' AND '20142602'
-
无论如何都不要在这里使用
BETWEEN。除非打算包含恰好在 2 月 26 日午夜但在该日期没有其他时间的行。 -
@MartinSmith,那我该怎么办?艾伦,是的,有行
-
@user960567 参考 MartinSmith 关于包含包含日期的行的评论,我使用 CAST CEILING 技巧取得了巨大成功,因此排除了时间
CAST(CEILING(CAST(@MyDate AS FLOAT)) AS DATETIME)。地板也可以。见这里stackoverflow.com/questions/85373/floor-a-date-in-sql-server
标签: sql date sql-server-2012