SELECT GETDATE()

返回时间:2008-09-22 15:24:13.790

我想要没有时间部分的日期部分:2008-09-22 00:00:00.000

我怎么能得到那个?


当前回答

最简单的方法是使用:选择日期(GETDATE())

其他回答

以日期格式返回

CAST(订单日期AS日期)

以上代码将在sqlserver2010中运行

它将于2013年12月12日回归

对于SQL Server 2012,请使用以下代码

CONVERT(VARCHAR(10), OrderDate , 111)

如果使用SQL 2008及更高版本:

select cast(getdate() as date)

只要做到:

SELECT CAST(日期变量为日期)

或使用PostgreSQL:

SELECT date_variable::日期

这就是所谓的打字!

好吧,虽然我迟到了:),这是另一个解决方案。

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')
select convert(getdate() as date)

select CONVERT(datetime,CONVERT(date, getdate()))