【问题标题】:Short Date to Date短日期至今
【发布时间】:2016-02-13 14:35:45
【问题描述】:

美好的一天

我正在尝试将短日期(即 780506)转换为日期(即 1978/05/06),我尝试过 CASTING 日期 CAST(CONVERT(VARCHAR, 78) + '-' + CONVERT(VARCHAR, 05) + '-' + CONVERT(VARCHAR, 06) AS DATETIME) 但这不起作用。我尝试转换日期:CONVERT(VARCHAR(6), 780506), 12),但也无法正常工作。有没有简单的方法可以做到这一点?我需要这个的原因是国外身份证号码的前 6 位数字 = 出生日期,我只是想把它转换成一个可行的日期。

谢谢

【问题讨论】:

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


    【解决方案1】:

    转换为date类型:

    DECLARE @s VARCHAR(10) = '780506'
    SELECT convert(DATE, @s)
    

    对于专栏:

    SELECT CONVERT(DATE, ColumnName) FROM TableName
    

    【讨论】:

    • 嗨,这非常适合单个值,但我需要转换一个名为:ID_DATE 的整个列。我该如何声明?
    【解决方案2】:

    您可以使用CASTCONVERT。像这样:

    DECLARE @shortdate VARCHAR(10) = '780506'
    
    SELECT CONVERT(DATE, @shortdate)
    SELECT CAST(@shortdate AS DATE)
    

    结果:

    1978-05-06
    

    【讨论】:

      猜你喜欢
      • 2019-06-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多