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
我怎么能得到那个?
当前回答
您可以对日期部分和日期格式使用以下内容:
DATENAME=>返回表示指定日期的指定日期部分的字符串
DATEADD=>DATEPART()函数用于返回日期/时间的单个部分,例如年、月、日、小时、分钟等。
DATEPART=>返回表示指定日期的指定日期部分的整数。
CONVERT()=>CONVERT函数是将一种数据类型的表达式转换为另一种数据的通用函数。这个CONVERT()函数可用于以不同格式显示日期/时间数据。
其他回答
试试看:
SELECT CONVERT(VARCHAR(10),GETDATE(),111)
以上语句将您当前的格式转换为YYYY/MM/DD,请参阅此链接以选择您的首选格式。
日期:
SELECT CONVERT(date, GETDATE()) SELECT CAST(GETDATE() as date)
时间:
SELECT CONVERT(time , GETDATE() , 114) SELECT CAST(GETDATE() as time)
自从这个问题有了答案之后,有了很多变化,我想提供一种新的方法来获得所要求的结果。分析DATETIME数据有两种方法。首先,按照这个问题的要求获取日期:
DATEVALUE([TableColumnName])
第二,从值中获取时间:
TIMEVALUE([TableColumnName])
例子:
表:客户
列:CreationDate作为DateTime
[客户]。[创建日期]:2020年2月7日09:50:00
DATEVALUE([Customers].[CreationDate]) '--> Output: 2/7/2020
TIMEVALUE([Customers].[CreationDate]) '--> Output: 09:50:00
我希望这会有所帮助,因为我搜索了一段时间,找到了这个问题中看到的许多答案,但没有一个有效。IE铸造和转换。
快乐编码!
DECLARE @yourdate DATETIME = '11/1/2014 12:25pm'
SELECT CONVERT(DATE, @yourdate)
如果使用SQL 2008及更高版本:
select cast(getdate() as date)