我正在尝试比较日期。 <
的比较工作正常和 >
标志,但当我使用 =
它返回零行。查询如下:
SET DateFormat DMY
SELECT * FROM [Users]
where name like '%' + replace('', '%', '[%]') + '%'
and email like '%' + replace('', '%', '[%]') + '%'
and last_edited = CAST('18/3/2014' AS DATETIME)
ORDER BY CONVERT(DateTime, Last_edited,101) desc
"="
中的这个查询有什么问题|案例?`
最佳答案
更改您的 where 子句以删除时间部分:
DATEADD(dd, DATEDIFF(dd, 0, [last_edited]), 0) = CAST('18/3/2014' AS DATETIME)
根据列名称,我假设 [last_edited]
具有这样的值 2014-03-18 17:50:08.000
,因此您需要删除如果您想与 18/3/2014
进行精确比较,则为时间。
关于sql - 比较 SQL Server 2008 中的转换日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22471476/