3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SQL再入門 #6 - 取得範囲指定

Posted at

はじめに

単純なSELECTクエリで検索結果を全て表示させると、登録されているデータが莫大であればあるほど検索結果の表示に時間がかかり、場合によってはタイムアウトエラーになってしまいます。
処理が重くなってサービスが止まってしまうなどの影響が発生することもあるようです。

結果を絞って検索する手段の一つとして、WHERE句で条件を指定することも一つの手です。
今回は、LIMITOFFSETを使うことで特定の範囲に絞って結果を確認することを学習します!

LIMIT句

取得するデータの上限を指定することができます

例)usersテーブルに登録されている成人の最新10名を確認する

SELECT *
FROM users
WHERE age >= 18
ORDER BY created_at DESC
LIMIT 10;

OFFSET句

指定した件数分、先頭のデータをスキップしてデータを取得できます

例)usersテーブルに登録されている成人の最新11人目~20人目の10名を確認する

SELECT *
FROM users
WHERE age >= 18
ORDER BY created_at DESC
LIMIT 10 OFFSET 10;

LIMITとOFFSETを併用し、アプリ側でOFFSET値を計算して結果を取得することでページネーションを実装できます。

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?