ホーム › エンジニアコラム › SQL入門 SELECT文の基本を身につける
DATABASE COLUMN

SQL入門 SELECT文の基本を身につける

Webアプリの裏側では、ほぼ必ずデータベースが動いています。その操作言語がSQL。中でも最もよく使うのがデータを取り出す SELECT文です。まずはここを押さえれば、DB操作の入り口はクリアです。

📅 2026-07-20✍ progo編集部

SQLとSELECT文

SQL はデータベースを操作する言語です。中でも SELECT は「保存されたデータを取り出す」命令で、使用頻度は圧倒的。ここではusersテーブル(id, name, age, city)を例に進めます。

全件取得の基本形

SELECT * FROM users;

* は「全ての列」の意味。特定の列だけ欲しいなら列名を並べます。

SELECT name, age FROM users;

WHERE ―― 条件で絞り込む

SELECT * FROM users WHERE age >= 20;
SELECT * FROM users WHERE city = 'Tokyo';

複数条件は AND / OR でつなげます。

SELECT * FROM users WHERE age >= 20 AND city = 'Tokyo';

LIKE ―― あいまい検索

%は任意の文字列を表すワイルドカードです。

SELECT * FROM users WHERE name LIKE '田%';   -- 「田」で始まる

ORDER BY ―― 並べ替え

SELECT * FROM users ORDER BY age;        -- 昇順(小さい順)
SELECT * FROM users ORDER BY age DESC;   -- 降順(大きい順)

LIMIT ―― 件数を絞る

SELECT * FROM users ORDER BY age DESC LIMIT 3;   -- 年齢上位3件

集計関数 ―― 数える・合計する

SELECT COUNT(*) FROM users;        -- 件数
SELECT AVG(age) FROM users;        -- 平均年齢
SELECT city, COUNT(*) FROM users GROUP BY city;   -- 都市ごとの人数

GROUP BY は「グループごとに集計」する指定で、ランキングや集計レポートの基礎になります。

まとめ

SELECT 列 FROM テーブル WHERE 条件 ORDER BY 並び順 LIMIT 件数——この形が SELECT の骨格です。まずは手元のデータでWHEREとORDER BYを組み合わせて、思い通りにデータを取り出す感覚をつかみましょう。