【问题标题】:How can I convert an Integer datatype columns value into datetime in SQL Server如何在 SQL Server 中将整数数据类型列值转换为日期时间
【发布时间】:2020-09-03 19:17:29
【问题描述】:

我有附件截图中的表格,我想连接 logdatelogtime 整数列并将它们转换为日期时间

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

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

【问题讨论】:

  • 你想要文本类型的结果还是日期时间类型?

标签: datetime sql-server-2012 type-conversion


【解决方案1】:

建立一个有效的日期字符串,然后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 ...

【讨论】:

  • substr ?或者你的意思是substring
  • @Squirrel 是的,谢谢。加上建造火车残骸所需的其他一些东西
猜你喜欢
  • 1970-01-01
  • 2015-12-16
  • 1970-01-01
  • 2017-06-11
  • 2019-02-16
  • 1970-01-01
  • 1970-01-01
  • 2019-10-07
  • 1970-01-01
相关资源
最近更新 更多