我尝试在sql server中将2016/07/15
(nvarchar格式)转换为此datetime
格式2016-07-15 00:00:00
。但我需要时间部分成为当前时间。任何人都可以帮忙吗?
这是我的sp:
declare @DateTime varchar(50)
set @DateTime = '2016/07/15'
select convert(varchar, cast(@DateTime as datetime), 120)
答案 0 :(得分:0)
您可以使用:
declare @DateTime varchar(50)
set @DateTime = CONCAT('2016/07/15' , ' ', CONVERT(TIME, GETDATE()))
select @DateTime
select convert(varchar, cast(@DateTime as datetime2(7)), 120)
或者将CONCAT
替换为:
set @DateTime = '2016/07/15' + ' ' + CONVERT(NVARCHAR(50), CONVERT(TIME, GETDATE()))
答案 1 :(得分:0)
试试这个......
只需与输出结束时间
declare @DateTime varchar(50)
set @DateTime = '2016/07/15'
select convert(varchar, cast(@DateTime as datetime), 101) + ' ' + CONVERT(varchar, getdate(),108)
答案 2 :(得分:0)
试试这个,
DECLARE @DateTime VARCHAR(50)
SET @DateTime = '2016/07/15'
SELECT DATEADD(day, 0, DATEDIFF(day, 0, @DateTime)) + DATEADD(day, 0 - DATEDIFF(day, 0, getdate()), getdate())