ホームページ >データベース >mysql チュートリアル >SQL の ROWNUM を使用して特定の範囲の行を取得するにはどうすればよいですか?
SQL ROWNUM 値の特定の範囲の取得
SQL では、ROWNUM 疑似列を使用して、結果内の現在の行の位置を取得できます。セット。限られた範囲の行を返す場合に便利です。ただし、現在のクエリでは、特定の範囲内の行を返す際に問題が発生しているようです。
これを修正するには、わずかな変更が必要です。標準の ROWNUM 疑似列を使用する代わりに、サブクエリを使用して、元のデータと行番号の両方を含む一時テーブルまたは CTE (共通テーブル式) を作成する必要があります。このアプローチにより、フィルター条件が適用される前に行番号が確実に評価されます。
修正されたクエリは次のようになります:
SELECT * FROM ( SELECT m.*, ROWNUM() OVER (ORDER BY m.id) AS r FROM maps006 m ) WHERE r > 49 AND r < 101
このクエリ内:
この修正されたクエリは、指定された範囲内の行を正常に取得する必要があります。 ROWNUM 範囲。
以上がSQL の ROWNUM を使用して特定の範囲の行を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。