如何将时间转换为DATETIME
从数据库返回今天的日期和时间?
假设我只有时间在我的数据库中。12:30 PM
,当我使用:
CONVERT(DATETIME, a.Start Time)
它总是返回1900-01-01 12:30:00.000
。有什么办法可以得到今天的日期吗?
喜欢 :
2013-07-11 12:30:00:000
SELECT CONVERT(VARCHAR(19), (cast(getDate() as date) + cast(tm as datetime)), 120)
from yourTable
输出:2013-07-11 12:30:00
检查它是否符合您的要求
尝试这样的事情:
DECLARE @currDate DATETIME;
@StrDate VARCHAR(30),
@StrTime VARCHAR(30)
SET @currDate = GETDATE();
SET @StrDate = CONVERT(VARCHAR, @currDate , 101);
SET @StrTime = CONVERT(VARCHAR, a.StartTime,108)
SET @StrDate = (@StrDate + ‘ ‘ + @StrTime);
RETURN CONVERT(DATETIME,@StrDate,121);
这是您需要的一些不错的低调(tm)版本:
DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), 0) + a.Start Time