広告スペース(バナー)
🗄️SQL レッスン
データ操作とサブクエリ5▾
構文の基本を深める7▾
応用的な条件・結合7▾
検索とテーブル操作の応用6▾
高度なクエリ技法6▾
集計とデータ整合性6▾
レッスン 26 / 50
LIMITとOFFSETでページネーション
このレッスンでは、LIMITとOFFSETを使ったページネーションの仕組みを学び、検索結果を分割して表示する方法を理解することを目標にします。「SQL LIMIT OFFSET 使い方」で調べている方向けです。
LIMIT 件数で取得する行数を制限し、OFFSET 件数で何行目からはじめるかを指定できます。「検索結果を1ページ10件ずつ表示する」といったページ送りの仕組みに使われます。
サンプルコードでは、ORDER BY score DESC LIMIT 2 OFFSET 2;という指定で、点数が高い順に並べた結果のうち、3番目と4番目のデータだけを取得しています。OFFSETの数値を変えることで、「次のページ」の内容も自由に取得できる仕組みを確認してみましょう。
初心者がよくつまずくのが、OFFSETの数え方です。OFFSET 2は「2件飛ばす」という意味であり、3件目から取得を始めることになります。ページ番号との対応関係(1ページ目はOFFSET 0など)を計算式として整理しておくと混乱しません。
大量のデータを一度に全部取得するとサーバーやブラウザの負荷が大きくなるため、実際のWebサービスではほぼ必ずこのページネーションの仕組みが使われています。ECサイトの商品一覧が代表例です。
SQL
OUTPUT / 実行結果
💡 初回実行時はSQLエンジンの読み込みに数秒かかります。
🎯
ここまでできればゴール達成!
検索結果を1ページずつ区切って表示する、ページネーションが作れるようになります。
検索結果を1ページずつ区切って表示する、ページネーションが作れるようになります。
広告スペース(バナー)
広告スペース(記事内)