【问题标题】:SQL Server query (view) Convert String to DateTimeSQL Server 查询(查看)将字符串转换为日期时间
【发布时间】:2014-12-05 19:05:03
【问题描述】:

我有点生疏了,似乎完全忘记了如何做到这一点。我正在接收数据,数据时间列是字符串格式char(12)

例如:201411061900

如何编写查询(视图)以将其转换为DateTime

我使用过CONVERT (datetime, dbo.KWH.mr_dtm,120),但收到错误Conversion failed when converting date and/or time from character string.

我运气不太好。非常感谢您。

如果你也想建议 -5 时区,我不介意。 :)

【问题讨论】:

    标签: sql-server string datetime view


    【解决方案1】:

    Magnus 回答了我的问题。我想把它贴在这里,以防它对将来的任何人有所帮助。 Here is the link to the answer.

    在 SQL Server 中,没有输出格式标识符(例如 120)可让您将 char(12) 转换为日期时间。但是你可以使用 Substring 函数:

    Select Cast(Substring(dbo.KWH.mr_dtm,1,8) + ' ' + Substring(dbo.KWH.mr_dtm,9,2)+':'+ Substring(dbo.KWH.mr_dtm,11,2) as DateTime)
    

    谢谢大家!非常感谢。
    哦,这篇文章帮助我解决了我的时区设置问题。

    Convert Datetime column from UTC to local time in select statement

    非常感谢 Michael Goldshteyn 的时区转换。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-26
      • 1970-01-01
      相关资源
      最近更新 更多