All*_*nde 18 sql t-sql datetime date-arithmetic
重复 什么是去除datetime值(SQL Server)的时间部分的最佳方式?
我有一个列来跟踪使用日期时间创建事物的列,但是我想生成一个按日分组的报表,所以我需要一种方法来清空datetime列的时间组件.
我该怎么做呢?
小智 31
为什么不直接转换为日期:
select convert(date, getdate())
Run Code Online (Sandbox Code Playgroud)
这截断了几天而不是几轮.圆形天做这个:
select convert(date, getdate() + 0.5)
Run Code Online (Sandbox Code Playgroud)
SQL*_*ace 18
一种方法是更改getdate()为列名,
select dateadd(dd, datediff(dd, 0, getdate())+0, 0)
Run Code Online (Sandbox Code Playgroud)
这是另一个解决方案:
SELECT CAST( FLOOR( CAST( GETDATE() AS float) ) AS smalldatetime)
Run Code Online (Sandbox Code Playgroud)