【问题标题】:SQL Server date conversion not is formatting the outputSQL Server 日期转换不是格式化输出
【发布时间】:2018-01-27 16:19:27
【问题描述】:

我的 SQL 语句应该在日期列中添加 5 天,并将输出重新格式化为 MM/DD/YYYY。

计算正常,但无论我使用什么值,格式都不会改变。

日期列定义为varchar(128)(我在转换语句中使用了datetimevarchar(128))。

我做错了什么?

SELECT 
    FSI_Date, DATEADD("d", +5, CONVERT(DATE, FSI_Date, 101)) AS NEWDAY,
FROM
    DB_test

FSI_Date       NEWDAY
---------------------------
12/12/2015     2015-12-17

【问题讨论】:

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


    【解决方案1】:

    SQL Server 会将mm/dd/yyyy 转换为日期,因此,您只需要dateadd(),然后再转换回您想要的格式。

    如果您想要自然日期,请删除最后的 convert(...,101)

    示例

    Select FSI_Date
          ,NewDay = convert(varchar(10),DateAdd(DAY,5,@FSI_Date),101)
     From  DB_Test
    

    退货

    FSI_Date            NewDay
    12/12/2015          12/17/2015
    

    【讨论】:

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