繁体   English   中英

如果在“大于或等于”和“小于或等于”中使用相同的日期,where子句将失败

[英]Where clause fails if using same date in a “greater than or equal to” and a “less than or equal to”

为什么当date1date2dateField相同且有应返回dateField == date1行时,此查询不返回任何行?

例子:

select * from tableName where dateField >= date1 and dateField <= date2

看来smalldatetime字段dateField的时间部分以前全为零,现在不是。 解决方案是只比较dateField的日期部分。

SELECT * 
FROM tableName
WHERE 
CONVERT(DATE, dateField) >= date1 AND CONVERT(DATE, dateField) <= date2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM