ページングに共通テーブル式を使用しています。
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
このクエリを実行した直後に、アイテムの総数を取得するために、ほぼ同じクエリを実行します。
with query as (
Select Row_Number() over (Order By OrderNum ASC) as TableRowNum,
FirstName,
LastName
From Users
)
Select Count(*) from query
これらを組み合わせてみました(つまり、CTEを定義し、データをクエリしてからカウントをクエリしますが、これを行うと、2番目のクエリ(カウント)。
DBへのラウンドトリップを節約するために、これら2つのクエリを1つに結合する方法はありますか?