假设我有一个存储过程,它调用了一个返回参数Count
,它由以下 SQL 组成:
with temp as
(
SELECT ROW_NUMBER() OVER( ORDER BY o.createDate) as rowNum,
o.orderId
FROM Orders as o
)
SELECT * FROM temp where rowNum BETWEEEN 10 and 20
SELECT @Count = COUNT(*) FROM Temp
目前这将中断,因为Temp
在第一次选择之后就消失了。我是否可以将返回参数的值设置为我的 CTE 中的总行数并返回 10-20 的行?
我想我可能不得不使用临时表来做这件事,但我很好奇它是否可以使用 CTE 来完成。