相关疑难解决方法(0)

如何重用公用表表达式

我正在使用公用表表达式进行分页:

with query as (
  Select Row_Number() over (Order By OrderNum ASC) as TableRowNum,
         FirstName,
         LastName
  From   Users
)
Select * from query where TableRowNum between 1 and 25 Order By TableRowNum ASC
Run Code Online (Sandbox Code Playgroud)

在进行此查询后,我立即进行几乎相同的查询以检索项目总数:

with query as (
  Select Row_Number() over (Order By OrderNum ASC) as TableRowNum,
         FirstName,
         LastName
  From   Users
)
Select Count(*) from query
Run Code Online (Sandbox Code Playgroud)

我尝试将这些组合在一起(即:定义CTE,查询数据然后查询Count,但是当我这样做时,我收到错误消息"无效对象名称'查询'"以响应第二个查询(计数).

有没有办法将这两个查询合并为一个,以保存到DB的往返?

sql sql-server common-table-expression

28
推荐指数
1
解决办法
2万
查看次数

标签 统计

common-table-expression ×1

sql ×1

sql-server ×1