SQL Server 2012には、指定したページサイズとそのページに基づいて多数のレコードを取得するクエリがあります。これは次のようになります。オフセットをフェッチしてすべての行を取得する
SELECT LocID, LocName
FROM Locations
ORDER BY LocName OFFSET @PageNum ROWS
FETCH NEXT @PageSize ROWS ONLY
コードはかなりシンプルです。しかし、私がしなければならないことは、ページングを正しく返す関数にそれを置きます。しかし、私はこの関数からすべてのレコードを返す必要があるかもしれないので、オフセットやFETCHなしで関数を呼び出すオプションが必要です(ほとんどの場合、ページングを持たないレポートであり、まっすぐなデータでなければなりません) 。私はこれを行う良い方法を考えることができません。
すべてのレコードを返すだけの大きさの '@ PageSize'を呼び出すだけではどうですか? –
問題は、私がそれを実行した後まで、レコードセットがどれだけ大きくなるのか分かりません。私はその問題に似た何かについて別の質問をしました。 – CrystalBlue
INTまたはBIGINTの上限は、 –