0

如何将时间转换为DATETIME从数据库返回今天的日期和时间?

假设我只有时间在我的数据库中。12:30 PM,当我使用:

CONVERT(DATETIME, a.Start Time)

它总是返回1900-01-01 12:30:00.000。有什么办法可以得到今天的日期吗?

喜欢 :

2013-07-11 12:30:00:000
4

3 回答 3

1
SELECT CONVERT(VARCHAR(19), (cast(getDate() as date) + cast(tm as datetime)), 120)
               from yourTable

输出:2013-07-11 12:30:00

检查它是否符合您的要求

查看 SQL FEEDLE 演示

于 2013-07-11T09:04:35.473 回答
0

尝试这样的事情:

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);
于 2013-07-11T08:53:13.240 回答
0

这是您需要的一些不错的低调(tm)版本:

DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), 0) + a.Start Time
于 2013-07-11T09:12:34.540 回答