ITやプログラミングを勉強していると、「SQL」という言葉を目にする機会が増えてきます。
しかし、SQLが何のために使われるものなのか、最初は分かりにくいですよね。
この記事では、SQLとは何かを初心者向けにわかりやすく解説します。
データベースとの関係やSQLでできること、代表的なSQL文、身近な利用例まで紹介するので、SQLの基本を知りたい方はぜひ参考にしてください。
SQLとは?
SQLとは、データベースに保存されたデータを検索したり、追加・更新・削除したりするためのデータベース言語です。
プログラミング言語と混同されがちですが、条件分岐やループ処理ができないため、厳密には別物です。
例えば、ネットショップの商品情報を検索したり、会員情報を登録したり、注文履歴を表示したりするときにSQLが使われています。
SQLは「Structured Query Language」の略で、日本語では一般に「構造化問い合わせ言語」と呼ばれます。
ここでいう「データベース」とは、たくさんのデータを整理して保存・管理する仕組みのことです。
例えば、ネットショップであれば、次のような情報をデータベースに保存できます。
SQLを使うことで、データベースに対して「この商品を探して」「この顧客情報を追加して」「この価格を変更して」といった指示を出せます。
SQLはデータベース言語として国際規格にも定められており、データの構造やデータに対するさまざまな操作を扱うために利用されています。
SQLとデータベースの関係
SQLを理解するには、まず「SQL」と「データベース」の違いを知っておきましょう。
簡単に言うと、
データベース = データを保存・管理する場所
SQL = データベースを操作するための言語
という関係です。
Excelに例えると、
データベースは「大量のデータを管理している表」
SQLは「その表から必要なデータを探したり変更したりするための指示」
のようなものです。
データベースの中では、データを「テーブル」と呼ばれる表形式の単位で管理することが一般的です。
例えば「商品テーブル」に、商品名や価格、在庫数などを保存します。
SQLを使えば、そのテーブルから必要な商品だけを検索したり、価格を変更したりできるのです。
SQLでできること
SQLでは、データベースに対してさまざまな操作ができます。
初心者がまず覚えたいのが、次の4つです。
| SQL文 | できること |
|---|---|
| SELECT | データを取得する |
| INSERT | データを追加する |
| UPDATE | データを更新する |
| DELETE | データを削除する |
この4つは、SQLの基本として特に重要です。
SELECT:データを取得する
SELECTは、データベースから必要なデータを取得するときに使います。
例えば、商品テーブルから商品名と価格を取得する場合は、次のように書きます。
SELECT name, price FROM products;
「productsというテーブルから、nameとpriceを取得する」という意味です。
条件を指定してデータを絞り込むこともできます。
SELECT * FROM products WHERE price >= 5000;
これは「価格が5,000円以上の商品を取得する」という処理です。
INSERT:データを追加する
INSERTは、新しいデータを追加するときに使います。
INSERT INTO products (name, price)
VALUES ('ノートパソコン', 100000);
この例では、productsテーブルに「ノートパソコン」という商品と価格を追加しています。
UPDATE:データを更新する
UPDATEは、すでに登録されているデータを変更するときに使います。
UPDATE products
SET price = 90000
WHERE name = 'ノートパソコン';
これは「ノートパソコンの価格を90,000円に変更する」という意味です。
なお、UPDATEを使うときは、条件を指定するWHERE句(後述)に注意が必要です。
WHEREを指定しないと、意図せず複数のデータを更新してしまう可能性があります。
DELETE:データを削除する
DELETEは、データを削除するときに使います。
DELETE FROM products
WHERE name = 'ノートパソコン';
これは「ノートパソコンという商品を削除する」という意味です。
DELETEもUPDATEと同じく、WHEREの指定には十分注意しましょう。

SQLでよく使われる「WHERE」とは?
SQLを学ぶと、「WHERE」という言葉が頻繁に登場します。
WHEREは、データを取得・更新・削除するときの条件を指定するための句です。
「句」とは、SQL文の中で特定の役割を持つ部分のことです。
例えば、
SELECT * FROM users
WHERE age >= 30;
と書けば、「usersテーブルの中から30歳以上のデータだけを取得する」という意味になります。
このようにWHEREを使うことで、大量のデータの中から必要な情報だけを取り出せます。
SQLサーバーとは?
SQLサーバー(Microsoft SQL Server)は、マイクロソフトが作ったデータ管理のシステムです。
表のようにデータを整理して保存でき、Windowsと相性が良いです。
SQL言語で動かせるサーバーといったところでしょうか。
無料で使える種類もあります。
SQLの利用例
SQLは、私たちが普段利用しているさまざまなWebサービスで活用されています。
例えばネットショップでは、
といった処理でデータベースが利用されています。
SNSでも、ユーザー情報や投稿内容、コメントなど、多くのデータを管理する必要があります。
そのため、Webサービスや業務システムを開発する際に、SQLは重要な知識の一つとなっています。
SQLとMySQL・PostgreSQLの違い
SQLを勉強していると、「MySQL」「PostgreSQL」「Oracle」「SQL Server」などの名前も出てきます。
ここで混乱しやすいのが、SQLとMySQLは同じものではないという点です。
SQLはデータベースを操作するための言語です。
一方、MySQLやPostgreSQLなどは、SQLを使ってデータを管理するためのデータベース管理システム(DBMS)です。
DBMSとは、データベースを保存・管理したり、SQLを実行したりするためのソフトウェアです。
イメージとしては、
SQL=データベースに出す指示
MySQL・PostgreSQLなど=その指示を受けてデータを管理する仕組み
と考えると分かりやすいでしょう。
なお、基本的なSQLの書き方は共通していますが、データベース製品によって細かな構文や機能に違いがあります。
SQLを学ぶなら何から覚える?
SQL初心者は、最初から複雑なSQLを覚える必要はありません。
まずは次の順番で学習すると理解しやすいでしょう。
- データベースとテーブルを理解する
- SELECTでデータを取得する
- WHEREで条件を指定する
- ORDER BYでデータを並べ替える
- INSERTでデータを追加する
- UPDATEでデータを更新する
- DELETEでデータを削除する
- JOINで複数のテーブルを扱う
特に最初はSELECT文を重点的に学ぶのがおすすめです。
SELECTに慣れてきたら、条件指定や並べ替え、集計、JOINなどへ進むと、少しずつ複雑なデータ操作ができるようになります。
まとめ
SQLとは、データベースに保存されたデータを操作するための言語です。
SQLを使うことで、データの検索・追加・更新・削除などを行えます。
初心者がまず覚えたいのは、次の4つです。
また、SQLとMySQL・PostgreSQLなどは同じものではありません。SQLは「言語」であり、MySQLやPostgreSQLなどはSQLを利用してデータベースを管理するシステムです。
SQLは、Webサービスや業務システム、データ分析など、さまざまな分野で役立つ基礎知識です。
まずはSELECT文から実際に書いてみると、SQLの仕組みを理解しやすくなります。
「SQLとは何か」を理解したら、次はSELECT・WHERE・ORDER BYなどの基本構文を一つずつ覚えていきましょう。

