小编Mom*_*omo的帖子

如何在SQL Server中显示日期名称?

我在SQL Server上有一个查询

我想显示如下:

CDATE      | CDAY
2019-04-01 | Monday
2019-04-02 | Tuesday
...        | ......
2019-04-30 | Tuesday
Run Code Online (Sandbox Code Playgroud)

但是我发现错误如下:

从字符串转换日期和/或时间时转换失败。

请有人帮忙

DECLARE @V_DATE DATE = GETDATE()

;WITH CTE_DATE AS (
        SELECT  DATEADD(dd,-(DAY(@V_DATE)-1),@V_DATE) CDATE,
        DATENAME(dw, CONVERT(varchar, DATEADD(dd,-(DAY(@V_DATE)-1),@V_DATE))) CDAY
        UNION ALL
        SELECT  DATEADD(dd,1,CDATE),
        DATENAME(dw, CONVERT(varchar, DATEADD(dw,1,CDAY)))
        FROM    CTE_DATE
        WHERE   DATEADD(dd,1,CDATE) <= DATEADD(dd,-(DAY(DATEADD(mm,1,CDATE))),DATEADD(mm,1,CDATE))

    )
    SELECT * FROM CTE_DATE
Run Code Online (Sandbox Code Playgroud)

sql sql-server date sql-server-2017

7
推荐指数
1
解决办法
79
查看次数

标签 统计

date ×1

sql ×1

sql-server ×1

sql-server-2017 ×1