【问题标题】:Convert DATETIME to varchar in SQL在 SQL 中将 DATETIME 转换为 varchar
【发布时间】:2021-03-26 18:37:06
【问题描述】:

我想用Friday 07-Feb-20 8:30 AM这种类型的输出将DATETIME转换为VARCHAR。我试着这样做。但它没有给出我想要的正确格式。

DECLARE @STARTDATE DATETIME,@SDATE VARCHAR(250)
SELECT @STARTDATE = SESSION_START  FROM SESSION_INFO WHERE SESSION_ID = 2071 //@STARTDATE = 2013-01-28 14:00:00.000
SET @SDATE = CONVERT(VARCHAR,@STARTDATE,100)
PRINT @GOOGLE  //Jan 28 2013  2:00PM

我想要day-mon-year hh:min AM/PM (Friday 07-Feb-20 8:30 AM) 这种格式。谢谢。

【问题讨论】:

    标签: sql sql-server tsql datetime datetime-format


    【解决方案1】:

    你想要format,例如

    select format(current_timestamp, 'dddd dd-MMM-yy hh:mm tt');
    

    注意:format 的性能不如convertcast,但它具有您需要的额外灵活性。

    【讨论】:

      【解决方案2】:

      您可以按如下方式使用format

      FORMAT (SESSION_START, 'dddd dd-MMM-yy hh:mm tt') 
      

      DB<>Fiddle 带有示例输出

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-11-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-12-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多