LIMIT Clauseは、SELECTコマンドから返されるレコード数の制限を指定します。オプションでオフセット(スキップする行数)を指定できます。LIMIT句は、SQL 2008 OFFSET / FETCH FIRST句を使用して指定することもできます。ORDER BYも指定されている場合は、OFFSET / LIMITが適用される前に適用されます。ORDER BYが指定されない場合、どのような行のサブセットが返されるかは一般的に保証されません。
Usage
LIMIT [offset,] limit-- or[OFFSET offset ROW|ROWS] [FETCH FIRST|NEXT [limit] ROW|ROWS ONLYSyntax Rules
limit/offset式は非負整数でなければなりません。オフセット0は無視されます。LIMIT が0の場合、行は返されません;FIRST/NEXTという用語は互換性があり、ROW/ROWSという用語も互換性があります;- limit句は、結果がlimitの論理的適用と一致しない場合でも、プッシュ操作が禁止されるべきではないことを示すために、オプションで先行する
NON_STRICTヒントを取ることができます。ヒントが必要なのは、SELECT * FROM VW /*+ NON_STRICT */ LIMIT 2のような順不同のリミットのみです。例LIMIT 100- 最初の100レコード(行1-100)を返します。LIMIT 500, 100- 500レコードをスキップし、次の100レコード(501~600行)を返します。OFFSET 500 ROWS- 500レコードをスキップOFFSET 500 ROWS FETCH NEXT 100 ROWS ONLY- 500レコードをスキップし、次の100レコード(行501-600)を返します。FETCH FIRST ROW ONLY- は最初のレコードのみを返します。
- Be sure that there is no whitespace between
/*and+when using e.g./*+ NON_STRICT */; - Configure your SQL client not to remove multi-line comments (in Squirrel: Session->Session Properties->SQL-> Remove multi-line comment ( /* ... */ )