我有一列时间像这样
time
2016-04-05 23:41:00
我想做一个工作,它会自动插入时间。但我面临的问题是getdate()
,我今天得到的是当前日期和时间。
我们可以声明时间并且只从getdate()
函数中获取日期吗?
例如:
declare @time = '07:00:00'+convert(varchar(10),getdate()-1,120)
我想在输出作为2016-04-05 07:00:00
一种方法是将您从GetDate()
获得的值转换为Date
数据类型并返回到DateTime
,并将Time的值添加到它(将其从Time
数据类型转换为DateTime
),如下所示:
DECLARE @Time time = '07:00:00'
SELECT GETDATE() As CurrentTime,
CAST(CAST(GETDATE() As Date) As Datetime) + CAST(@Time as datetime) As TimeToday
结果CurrentTime TimeToday
----------------------- -----------------------
2016-07-06 04:13:11.090 2016-07-06 07:00:00.000
试试这个
declare @time varchar(20) = convert(varchar(20),getdate(),120)