Sql server 显示当前周天数的查询视图

Sql server 显示当前周天数的查询视图,sql-server,Sql Server,当我运行查询时,我试图显示一周中的当前工作日,但收到一条错误消息。我在这里看到一篇帖子,说我复制了代码,它成功了,但不知怎么的,我的查询被改变了,现在不起作用了。这是我复制的代码,当它运行时,它显示了本周的当前日期列表 WITH DAYSOFTHEWEEK AS ( SELECT 0 AS DAY UNION ALL SELECT DAY + 1 AS Expr1 FROM dbo.DaysoftheWeek AS DAYSOFTHEWEEK_2 WH

当我运行查询时,我试图显示一周中的当前工作日,但收到一条错误消息。我在这里看到一篇帖子,说我复制了代码,它成功了,但不知怎么的,我的查询被改变了,现在不起作用了。这是我复制的代码,当它运行时,它显示了本周的当前日期列表

WITH DAYSOFTHEWEEK
AS
(
    SELECT 0 AS DAY

    UNION ALL

    SELECT DAY + 1 AS Expr1
    FROM dbo.DaysoftheWeek AS DAYSOFTHEWEEK_2
    WHERE (DAY < 4)
)
SELECT DATEADD(DAY, DAY, DATEADD(DAY, 2 - DATEPART(WEEKDAY, CONVERT(DATE, GETDATE())), CONVERT(DATE, GETDATE()))) AS DAY_OF_THE_WEEK
FROM DAYSOFTHEWEEK AS DAYSOFTHEWEEK_1
GROUP BY DAY
从WITH子句中删除dbo

试试这个

WITH DAYSOFTHEWEEK
AS
(
    SELECT 0 AS DAY

    UNION ALL

    SELECT DAY + 1 AS Expr1
    FROM DaysoftheWeek AS DAYSOFTHEWEEK_2
    WHERE (DAY < 4)
)
SELECT DATEADD(DAY, DAY, DATEADD(DAY, 2 - DATEPART(WEEKDAY, CONVERT(DATE, GETDATE())), CONVERT(DATE, GETDATE()))) AS DAY_OF_THE_WEEK
FROM DAYSOFTHEWEEK AS DAYSOFTHEWEEK_1
GROUP BY DAY

您得到的错误是什么?只需删除dbo。。DaysoftheWeek是一个CTE公共表表达式,不需要架构前缀,因为它不是数据库中的对象。无效的列名“DAY”Pepelui360-有效。非常感谢。