如何将 Integer 数据类型列值转换为 SQL 服务器中的日期时间

How can I convert an Integer datatype columns value into datetime in SQL Server

我有随附屏幕截图中的 table,我想连接 logdatelogtime 整数列并将它们转换为 datetime

logdate  | logtime
20200501 |   90205
20200502 |  100215
20200503 |  110105

喜欢第一个例子'2020-05-01 09:02:05'

建立一个有效的日期字符串,然后convert()它:

select
    convert (datetime, concat(
        substring(cast(logdate as char(8)), 1, 4), '-', 
        substring(cast(logdate as char(8)), 5, 2), '-', 
        substring(cast(logdate as char(8)), 7, 2), ' ',
        substring(right('000000' + cast(logtime as varchar(6)), 6), 1, 2), ':', 
        substring(right('000000' + cast(logtime as varchar(6)), 6), 3, 2), ':', 
        substring(right('000000' + cast(logtime as varchar(6)), 6), 5, 2)
    ) as timestamp
from ...