データベースの用語一覧へ
このページの目次
データベース初級図解あり

SQLとは?

読み方:えすきゅーえる

最終更新:2026/08/18

3秒でわかる

データベースに検索や更新を指示する専用の言語。ほしい結果の条件だけを書けば、取り出し方はデータベース側が決めてくれます。

30秒図解

SQLはSELECT、FROM、WHERE、ORDER BY、LIMITの書く順番で欲しい結果を記述し、実際の取り出し方はDBが決める
これは SQL を書く順番。DB 内部の論理実行順ではない

もう少し詳しく

どういうものか

SQLは、リレーショナルデータベースを操作するための言語です。表に対して行を取り出す、足す、書き換える、消すといった指示を書きます。手続きの言語と違い、どの順にファイルを読むかといった手順は書きません。「売上が1000以上の行を日付順で」と結果の条件だけを書くと、実際の取り出し方はデータベースの最適化機能が決めます。

なぜ必要か

数百万行あるデータから条件に合う行を探す処理を、自分でファイルを開いて書くと、絞り込みの順序や索引の使い方を全部自力で設計することになります。SQLならその判断をデータベースに任せられ、しかもMySQLでもPostgreSQLでもほぼ同じ書き方が通じます。表計算ソフトが扱いきれない量になったとき、次に来るのがこの言語です。

具体例

-- 1. 取り出す SELECT name, price FROM products WHERE price >= 1000 ORDER BY price DESC LIMIT 10; -- 2. 集計する SELECT category, COUNT(*) AS cnt, AVG(price) AS avg_price FROM products GROUP BY category HAVING COUNT(*) >= 3; -- 3. 書き換える UPDATE products SET price = price * 1.1 WHERE category = 'drink';

SELECT FROM WHERE の3つが土台で、そこに並び替えと集計が乗る構造です。

つまずきやすいところ

WHEREHAVING の使い分けでつまずく人が多く見られます。WHERE は集計する前の1行ずつに、HAVING は集計した後のグループに対する条件です。もうひとつ、UPDATEDELETEWHERE を書き忘れると全行が対象になります。実行前に同じ条件を SELECT で試し、件数を確かめる癖をつけると事故が減ります。NULL の比較も要注意で、= NULL は決して真にならず IS NULL と書きます。

覚え方

英語の文としてほぼそのまま読めます。何を、どこから、どんな条件で、という順に並べるだけです。

似た用語との違い

内容
SQLデータベースを操作する言語
リレーショナルデータベース表の形でデータを持つ製品の分類
NoSQL表以外の持ち方をするデータベースの総称


同じSQLでも製品ごとに方言があり、日付の関数や上限件数の書き方あたりから差が出はじめます。

次に学ぶ

テーブルとは?

知識のつながり

サイドバーと同じ推奨ルート・関連語を、まとめて確認できます。

現在地SQLDB

LEARN BY DOING

この用語を、教材で使ってみる

直接関連する編と、その編を含むコースです。用語だけで終わらず、ブラウザ上で実際に手を動かせます。

この用語を扱うコース

コース

SQL入門:データベース操作のきほん

71レッスン
コース

DB設計入門 ER図・正規化・インデックス

47レッスン
コース

SQL道場 図書館DBに挑む10問

10レッスン
SQL・データベースコースの全編を見る