SQLとは、データベースに保存された情報を取り出したり、追加したりするための言語です。
SQLは「Structured Query Language」の略です。読み方は「エスキューエル」が一般的で、「シークェル」と読まれることもあります。
この記事では、SQLの意味やできること、使われる場面、SELECTやINSERTなどの基本文を初心者向けに解説します。
関連するIT用語・ビジネス用語をまとめて確認したい方は、IT用語・ビジネス用語一覧もあわせてご覧ください。
SQLとは?簡単にいうとデータベースを操作する言語

SQLとは、データベースに対して、情報の検索や追加、変更、削除を指示するための言語です。
たとえば、会員情報が保存されたデータベースに対して、「東京都に住んでいる会員を表示する」「新しい会員を追加する」といった指示を出せます。
データベースが情報をしまう場所なら、SQLはその場所にある情報を扱うための言葉です。
SQLは何の略?
SQLは「Structured Query Language」の頭文字を取った言葉です。
日本語では「構造化された問い合わせ言語」などと訳されます。ただし、初心者は難しい日本語訳を覚える必要はありません。
まずは「データベースに指示を出すための言語」と覚えると分かりやすいでしょう。
SQLの読み方
SQLは、一般的に「エスキューエル」と読みます。
人や会社によっては「シークェル」と読むこともあります。日本では「エスキューエル」と読まれることが多いです。
SQLとデータベースの関係
データベースは、名前や住所、商品、注文などの情報を整理して保存する仕組みです。
SQLは、そのデータベースに保存された情報を取り出したり、書き換えたりするときに使います。
たとえるなら、データベースは書類を保管する棚です。SQLは「この条件に合う書類を見せてください」と伝えるための指示にあたります。
SQLでできる4つのこと

SQLでできる基本的な操作は、次の4つです。
| 操作 | 使うSQL文 | 具体例 |
|---|---|---|
| 情報を取り出す | SELECT | 会員の名前を表示する |
| 情報を追加する | INSERT | 新しい会員を登録する |
| 情報を変更する | UPDATE | 会員の住所を変更する |
| 情報を削除する | DELETE | 不要な会員情報を消す |
情報を取り出す
データベースから必要な情報を取り出すときは、SELECT文を使います。
たとえば、会員の名前を一覧で表示したり、在庫が少ない商品だけを探したりできます。
情報を追加する
データベースに新しい情報を追加するときは、INSERT文を使います。
新しい会員や商品、注文などを登録するときに使われます。
情報を変更する
すでに保存されている情報を変更するときは、UPDATE文を使います。
住所や電話番号、商品の価格などを直すときに使われます。
情報を削除する
不要になった情報を削除するときは、DELETE文を使います。
削除する条件を正しく指定しないと、必要な情報まで消してしまうことがあるため注意が必要です。
SQLはどこで使われている?

SQLは、ネットショップや予約サイト、会員サイト、スマホアプリなどの裏側で使われています。
利用者が画面上でSQLを直接入力することは多くありません。しかし、検索や登録の処理を行うために、システムの中でSQLが動いていることがあります。
会員情報を検索するとき
会員制のサービスでは、名前やメールアドレス、登録日などの情報がデータベースに保存されています。
「今月登録した会員だけを表示する」といった検索をするときに、SQLが使われます。
商品や注文を管理するとき
ネットショップでは、商品名や価格、在庫数、注文内容などを管理しています。
SQLを使うと、「在庫が10個以下の商品」「今日入った注文」など、条件に合う情報を取り出せます。
売上を集計するとき
SQLは、売上や件数の集計にも使われます。
たとえば、「今月の売上はいくらか」「どの商品が一番売れたか」などを調べられます。
アプリの情報を保存するとき
アプリでは、利用者の設定や履歴、投稿内容などを保存することがあります。
保存した情報を表示したり変更したりする処理でも、SQLが使われる場合があります。
基本のSQL文と書き方
ここからは、よく使われる4つのSQL文を具体例で確認します。
次の例では、「users」という会員情報のテーブルがあるものとします。テーブルとは、データベースの中で情報を表の形に整理したものです。
| user_id | name | age |
|---|---|---|
| 1 | 田中 | 20 |
| 2 | 佐藤 | 25 |
SELECT文|情報を取り出す
SELECT文は、データベースから情報を取り出すためのSQL文です。
SELECT name FROM users;
このSQL文は、「usersテーブルからnameの情報を取り出す」という意味です。
実行すると、田中や佐藤などの名前が表示されます。
INSERT文|情報を追加する
INSERT文は、新しい情報を追加するためのSQL文です。
INSERT INTO users (name, age)
VALUES ('鈴木', 30);
このSQL文は、usersテーブルに「名前が鈴木、年齢が30」という情報を追加する例です。
INSERTは「追加する」と覚えると分かりやすいでしょう。
UPDATE文|情報を変更する
UPDATE文は、すでに保存されている情報を変更するためのSQL文です。
UPDATE users
SET age = 21
WHERE user_id = 1;
このSQL文は、user_idが1の会員の年齢を21に変更する例です。
名前ではなくuser_idを指定することで、変更する会員を特定しやすくなります。
DELETE文|情報を削除する
DELETE文は、データベースに保存されている情報を削除するためのSQL文です。
DELETE FROM users
WHERE user_id = 1;
このSQL文は、user_idが1の会員情報を削除する例です。
WHEREの条件を書かずに実行すると、テーブル内のすべての情報が削除されることがあります。
SELECT文の使い方を具体例で確認
SELECT文では、条件を付けたり、表示する順番を変えたりできます。
ここでは、初心者がよく使うWHEREとORDER BYを紹介します。
WHERE|条件に合う情報を取り出す
WHEREは、取り出す情報に条件を付けるときに使います。
SELECT name, age
FROM users
WHERE age >= 20;
このSQL文は、年齢が20歳以上の会員について、名前と年齢を取り出すという意味です。
「>=」は「以上」を表す記号です。
ORDER BY|表示する順番を変える
ORDER BYは、取り出した情報を並べ替えるときに使います。
SELECT name, age
FROM users
ORDER BY age;
このSQL文は、会員の名前と年齢を、年齢が小さい順に並べて表示する例です。
大きい順に並べる場合は、項目名の後ろにDESCを付けます。
SELECT name, age
FROM users
ORDER BY age DESC;
SQLとデータベース・SQL Serverの違い

SQLには、名前が似ていて混同しやすい言葉があります。
それぞれの違いを整理すると、次のようになります。
| 用語 | 意味 |
|---|---|
| SQL | データベースを操作するための言語 |
| データベース | 情報を整理して保存する仕組み |
| SQL Server | Microsoftが提供するデータベース管理システム |
| SQLite | 小さなアプリなどでも使われるデータベース管理システム |
| PostgreSQL | 幅広いシステムで使われるデータベース管理システム |
SQLとデータベースの違い
SQLは、データベースに指示を出すための言語です。
データベースは、情報を整理して保存する仕組みです。SQLとデータベースは同じものではありません。
SQLとSQL Serverの違い
SQL Serverは、Microsoftが提供しているデータベース管理システムです。
SQLは言語の名前であり、SQL Serverはデータベースを管理する製品の名前です。SQL Serverの中にある情報を操作するときにもSQLを使います。
SQLとSQLiteの違い
SQLiteは「エスキューライト」と読みます。
SQLiteは、データベースを管理する仕組みの一つです。SQLは、SQLiteに保存された情報を操作するときに使う言語です。
SQLとPostgreSQLの違い
PostgreSQLは「ポストグレスキューエル」や「ポストグレス」と読まれます。
PostgreSQLもデータベース管理システムの一つです。PostgreSQLに保存された情報を操作するときにもSQLを使います。
初心者がSQLを使うときの注意点
SQLは便利ですが、変更や削除を行うSQL文には注意が必要です。
特に、UPDATE文とDELETE文を使うときは、対象となる情報を正しく指定することが大切です。
UPDATEやDELETEではWHEREを確認する
WHEREは、どの情報を変更または削除するのかを指定する部分です。
WHEREを書かずにUPDATE文を実行すると、すべての情報が変更されることがあります。DELETE文では、すべての情報が削除されることがあります。
実行する前に、WHEREの条件が正しいかを確認しましょう。
DELETEとDROPは削除する対象が違う
DELETEは、テーブルの中に保存されている情報を削除するSQL文です。
DROPは、テーブルそのものを削除するSQL文です。
初心者は「DELETEは中身を削除する」「DROPは入れ物ごと削除する」と覚えると分かりやすいでしょう。
データベースによって書き方が少し違う
SELECTやINSERTなどの基本的なSQL文は、多くのデータベースで共通しています。
ただし、SQL Server、SQLite、PostgreSQLなど、使うデータベースによって細かな書き方が違う場合があります。
学習するときは、どのデータベースを使っているかも確認しましょう。
SQLインジェクションへの対策が必要
SQLインジェクションとは、Webサイトなどの入力欄を悪用し、データベースに不正な指示を出そうとする攻撃です。
Webサイトを作る側は、入力された文字をそのままSQL文に入れないなどの対策が必要です。
一般の利用者がSQLの対策をする必要はほとんどありませんが、信頼できないサイトに個人情報を入力しないことが大切です。
SQLに関するよくある質問
SQLはプログラミング言語ですか?
SQLは、データベースを操作するための言語です。
一般的なプログラミング言語とは目的や使い方が異なりますが、データベースに指示を出すための言語として使われています。
SQLは初心者でも学べますか?
SQLは、初心者でも学びやすい言語です。
最初はSELECT文で情報を取り出す練習から始めると理解しやすいでしょう。
その後、WHERE、ORDER BY、INSERT、UPDATE、DELETEの順に覚えると、基本的な操作が分かるようになります。
SQLとExcelは何が違いますか?
Excelは、表を作ったり、計算したりするためのソフトです。
SQLは、データベースに保存された情報を取り出したり、変更したりするための言語です。
手元にある小さな表を確認する場合はExcelが便利です。大量の情報から条件に合うものを取り出す場合は、SQLが向いています。
SQLを使うには何が必要ですか?
SQLを使うには、基本的にデータベースと、SQL文を入力して実行するためのソフトが必要です。
学習するだけであれば、ブラウザ上でSQLを練習できるサービスや、SQLiteなどを使う方法もあります。
SQLでは大文字と小文字を区別しますか?
SELECTやFROMなどの命令は、小文字で書いても動くことが一般的です。
select name from users;
ただし、読みやすくするため、SQLの命令は大文字で書くことがよくあります。
SELECT name FROM users;
SQL文の最後にあるセミコロンは必要ですか?
SQL文の最後にある「;」は、一つのSQL文が終わったことを表します。
使うソフトによっては省略できる場合もありますが、初心者はSQL文の最後に付ける習慣をつけるとよいでしょう。
SQLとはデータベースの情報を扱うための言語
SQLとは、データベースに保存された情報を取り出したり、追加したり、変更したりするための言語です。
SQLは「Structured Query Language」の略で、一般的には「エスキューエル」と読みます。
基本となるSQL文は、次の4つです。
- SELECT:情報を取り出す
- INSERT:情報を追加する
- UPDATE:情報を変更する
- DELETE:情報を削除する
SQL Server、SQLite、PostgreSQLは、データベースを管理するシステムの名前です。SQLそのものとは役割が異なります。
SQLを学ぶと、大量の情報から必要なものを探したり、売上や件数を集計したりできるようになります。
初心者は、まずSELECT文で情報を取り出すところから始めてみましょう。

