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 CONVERT(日期时间,转换(varchar,GETDATE(),103))-----dd/mm/yyyySELECT CONVERT(日期时间,转换(varchar,GETDATE(),101))------mm/dd/yyyySELECT CONVERT(日期时间,转换(varchar,GETDATE(),102))
其他回答
您可以简单地使用下面的代码在SQL中只获取日期部分,而不获取时间部分:
SELECT SYSDATE TODAY FROM DUAL;
好吧,虽然我迟到了:),这是另一个解决方案。
SELECT CAST(FLOOR(CAST(GETDATE() AS FLOAT)) as DATETIME)
后果
2008-09-22 00:00:00.000
如果您使用的是SQL Server 2012或更高版本,则可以使用以下FORMAT()函数-
SELECT FORMAT(GETDATE(), 'yyyy-MM-dd')
如果使用SQL 2008及更高版本:
select cast(getdate() as date)
select cast(createddate as date) as derivedate from table
createdate是您的datetime列,这适用于sqlserver
最简单的方法是使用:选择日期(GETDATE())