【问题标题】:SQL date format - producing different resultSQL 日期格式 - 产生不同的结果
【发布时间】:2018-06-11 13:48:07
【问题描述】:

我有一个包含 DOB 列的表 Cdata,列值如下:

'1945-01-01 00:00:00.000' 

我将上面的格式设置为 'YYYYMMDD' 格式如下:

select  format(c.dob,'yyyymmdd') from dbo.Cdata c where c.cid='12345'

我没有得到预期的输出。

Desired output:'YYYYMMDD' format: '19450101'

转发链接:http://rextester.com/NXBNZC17084

有什么帮助吗?

【问题讨论】:

    标签: sql-server date


    【解决方案1】:

    您需要在格式中将 mm 大写为 MM。实际上,它将返回日期字符串的分钟部分。试试下面的

    DECLARE @A DATETIME = '1945-01-01 00:00:00.000' 
    select  format(@A ,'yyyyMMdd') 
    

    【讨论】:

      猜你喜欢
      • 2019-01-07
      • 1970-01-01
      • 1970-01-01
      • 2016-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多