【问题标题】:How do I convert dd/mm/yy into date datatype如何将 dd/mm/yy 转换为日期数据类型
【发布时间】:2014-12-29 10:07:40
【问题描述】:

我能够将以下内容转换为 varchar 类型

SELECT CONVERT(VARCHAR(11),'01/02/14',103)

将上述日期转换为 date 数据类型时出现错误

SELECT Convert(date,'01/02/14',103)

我收到错误提示

Msg 241, Level 16, State 1, Line 1
Conversion failed when converting date and/or time from character string.

我也尝试了以下方法,但没有成功。

SELECT Convert(date,CONVERT(VARCHAR(11),'01/02/14',103),103)

如何转换为date 类型?

【问题讨论】:

    标签: sql-server sql-server-2008 date date-conversion


    【解决方案1】:

    请尝试dd/mm/yy 格式:

    SELECT Convert(date,'01/02/14',3);
    

    或者这个dd/mm/yyyy格式:

    SELECT Convert(date,'01/02/2014',103);
    

    【讨论】:

    • 谢谢 :) 真的很高兴它有帮助。
    【解决方案2】:

    从外部Convert 中删除103 格式。

    SELECT convert(date,CONVERT(VARCHAR(11),'01/02/14',103))
    

    或者干脆不用任何格式你可以convert到日期

    SELECT Convert(date,'01/02/14')
    

    【讨论】:

    • @ShilpaPraneesh 冷静下来,这不是我的 DV。不要假设事情
    【解决方案3】:

    试试cast

    select cast('01/02/14' as date)
    

    【讨论】:

    • 它的工作。但我有一个疑问。我们怎么知道 14 是 2014 年还是 1914 年?
    • 可能需要当前世纪。
    【解决方案4】:

    试试这个:

    SELECT Convert(date,'01/02/2014',103);
    

    (或)。

    SELECT Convert(date,'01/02/14',3);
    

    103 用于 YYYY 格式。如果要转换YY格式,请使用3。

    【讨论】:

      猜你喜欢
      • 2013-10-25
      • 2020-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-25
      • 2012-03-05
      • 1970-01-01
      相关资源
      最近更新 更多