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(smalldatetime,Convert(int,Convert(float,getdate())))
其他回答
日期(日期和时间字段)和Date_FORMAT(日期和日期,“%Y-%m-%d”)都只返回日期和时间的日期
SELECT CONVERT(datetime, CONVERT(varchar, GETDATE(), 101))
自从这个问题有了答案之后,有了很多变化,我想提供一种新的方法来获得所要求的结果。分析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铸造和转换。
快乐编码!
SELECT * FROM tablename WHERE CAST ([my_date_time_var] AS DATE)= '8/5/2015'
DECLARE @yourdate DATETIME = '11/1/2014 12:25pm'
SELECT CONVERT(DATE, @yourdate)