【发布时间】:2020-01-08 08:57:28
【问题描述】:
我想将 CTE 表用于两个查询。当我尝试如下所示时,它给出了一个错误
无效的对象名称“cte”。
;
WITH cte
AS (
SELECT ROW_NUMBER() OVER (
PARTITION BY hours ORDER BY hours
) AS rno
,personnum
,DATE
,hours
FROM datatable
WHERE personnum = @personnum
AND hours = @minhrs
)
INSERT INTO logdata
SELECT PERSONNUM
,DATE
,HOURS
FROM cte
WHERE rno = 1
UPDATE cte
SET hours = hours + 0.01
WHERE rno = 1
insert 语句已执行,但系统在 update 语句处抛出错误。
【问题讨论】:
-
简单回答:不,你不能。
标签: sql sql-server common-table-expression