SET ROWCOUNT
SET ROWCOUNT キーワードを使用することによって、現在のセッション内にある後続のすべての SELECT ステートメントから返される行数を制限することができます。
SET ROWCOUNT と
TOP の主な違いは、TOP が現在のステートメントにのみ作用するのに対し、SET ROWCOUNT は(次の SET ROWCOUNT またはセッションが終了するまでの)現在のデータベース セッション中に発行される後続のステートメントすべてに作用する点です。
構文
SET ROWCOUNT = 行数
備考
SET ROWCOUNT を条件とする SELECT ステートメントに ORDER BY 句が含まれており、その ORDER BY 句での最適化にインデックスを使用できない場合、PSQL はテンポラリ テーブルを生成します。テンポラリ テーブルにはクエリの結果セット全体が配置されます。テンポラリ テーブル内の行は ORDER BY 句で指定した順序で並べられ、その順序付けされた結果セットから ROWCOUNT の n 行が返されます。
ROWCOUNT にゼロを設定して ROWCOUNT 機能を無効にすることができます。
SET ROWCOUNT = 0
SET ROWCOUNT は動的カーソルを使用するときには無視されます。
SET ROWCOUNT と TOP の両方をクエリに適用した場合、2 つの値のうち小さい方の値に等しい行数を返します。
例
SET ROWCOUNT = 10;
SELECT * FROM person;
-- 10 行を返します
関連項目