SELECT / FROM / WHERE / ORDER BY / LIMITの読み方

入門 | 8分 で読める | 2026.06.17

公式ドキュメント

SQLで最初に覚える中心は SELECT です。SELECT はデータを取得する命令ですが、実際には FROMWHEREORDER BYLIMIT と組み合わせて使います。

一言でいうと

SELECT文は「どの表から、どの行を、どの列だけ、どの順番で、何件取るか」を書く命令です。

基本形

まずは、次の形を覚えます。

SELECT id, name, email
FROM users
WHERE active = true
ORDER BY created_at DESC
LIMIT 10;

各句の役割は次の通りです。

役割
SELECT表示する列を決める
FROM対象テーブルを決める
WHERE行を条件で絞る
ORDER BY並び順を決める
LIMIT取得件数を制限する

読む順番

SQLは書かれている順番のまま読むと、少しわかりにくいです。初心者のうちは次の順番で読むと理解しやすくなります。

読む順番見る場所考えること
1FROMどのテーブルを見るか
2WHEREどの行に絞るか
3SELECTどの列を表示するか
4ORDER BYどう並べるか
5LIMIT何件まで出すか

SQLを読むときは、まずFROMを見て「どの表の話か」を確認します。

SELECTは列を選ぶ

SELECT には、取得したい列を書きます。

SELECT name, email
FROM users;

SELECT * はすべての列を取得します。

SELECT *
FROM users;

学習中は便利ですが、実務では必要な列だけを指定する方が読みやすく、無駄なデータ取得も減らせます。

WHEREは行を絞る

WHERE は、条件に合う行だけを残します。

SELECT id, name
FROM users
WHERE active = true;

複数条件も書けます。

SELECT id, name
FROM users
WHERE active = true
  AND created_at >= '2026-01-01';

ここでは、アクティブで、かつ2026年以降に作成されたユーザーだけを取得します。

ORDER BYは並び替える

ORDER BY は結果の表示順を決めます。

SELECT id, name, created_at
FROM users
ORDER BY created_at DESC;
指定意味
ASC昇順、小さい順、古い順
DESC降順、大きい順、新しい順

LIMITは件数を制限する

LIMIT は、取得する件数を制限します。

SELECT id, name
FROM users
ORDER BY created_at DESC
LIMIT 5;

このSQLは、新しいユーザーを5件だけ取得します。

大量データを確認するときは、まずLIMITを付けて少ない件数で見るのが安全です。

よくある誤解

誤解実際
SELECT が最初に処理される理解上は FROMWHERE を先に考えると読みやすいです
WHERE は列を選ぶものWHERE は行を絞るものです
ORDER BY なしでも順番は決まる明示しない限り順番は保証されません
LIMIT だけで最新順になる最新順にしたいなら ORDER BY が必要です

まとめ

SELECT文は、対象テーブル、絞り込み条件、表示列、並び順、件数制限を組み合わせてデータを読む命令です。初心者のうちは FROMWHERESELECTORDER BYLIMIT の順に意味を確認すると読みやすくなります。

参考リソース

← 一覧に戻る
PR
PR
PR
PR