SELECT GETDATE()
返回时间:2008-09-22 15:24:13.790
我想要没有时间部分的日期部分:2008-09-22 00:00:00.000
我怎么能得到那个?
SELECT GETDATE()
返回时间:2008-09-22 15:24:13.790
我想要没有时间部分的日期部分:2008-09-22 00:00:00.000
我怎么能得到那个?
当前回答
select cast(createddate as date) as derivedate from table
createdate是您的datetime列,这适用于sqlserver
其他回答
从SQL Server 2022(16.x)开始,另一个选项是DATETRUNC()函数,使用day作为datepart参数的值:
SELECT DATETRUNC(day, GETDATE());
日期:
SELECT CONVERT(date, GETDATE()) SELECT CAST(GETDATE() as date)
时间:
SELECT CONVERT(time , GETDATE() , 114) SELECT CAST(GETDATE() as time)
日期(日期和时间字段)和Date_FORMAT(日期和日期,“%Y-%m-%d”)都只返回日期和时间的日期
如果使用SQL 2008及更高版本:
select cast(getdate() as date)
SELECT * FROM tablename WHERE CAST ([my_date_time_var] AS DATE)= '8/5/2015'