可能重复:
Best approach to remove time part of datetime in SQL Server
假设表列MyDate是datetime。然后可以将以下数据保存到db:
2011-11-24 12:43:27.723
2011-11-24 12
我希望毫不犹豫地将2011-11-24 12:43:27.723
转换为2011-11-24
,我尝试了以下方式:
CONVERT(DATETIME, CONVERT(INT, MyDate))
有趣的是:2011-11-24 12:43:27.723
转换为2011-11-25
而不是2011-11-24
。
如何解决?
答案 0 :(得分:4)
答案 1 :(得分:0)
虽然问题是关于SQL 2008,如果您使用的是早期版本的SQL Server,我倾向于使用这种方法:
CAST(FLOOR(CAST(CAST('2011-11-24 12:43:27.273' AS DATETIME) AS FLOAT)) AS DATETIME)
哪个输出:
2011-11-24 00:00:00.000