在SQL Server 中如何获取日期并保存在datetime中

解决方案

SELECT CAST(FLOOR(CAST(getdate() as FLOAT)) as DATETIME)

CAST-FLOOR-CAST似乎已经是最佳方法,至少在MS SQL Server 2005上是如此。

SQL Server 2008具有新的日期数据类型,这可将问题简化为:

SELECT CAST(CAST(GETDATE() AS date) AS datetime)

其他方法:

SELECT CAST(CONVERT(char(8), GETDATE(), 112) AS datetime) 最慢

SELECT DATEADD(day, DATEDIFF(day, 0, GETDATE()), 0)

SELECT CAST(CAST(GETDATE() - 0.50000004 AS int) AS datetime) 最快
日期:2020-03-24 13:11:21 来源:oir作者:oir