「データベースって難しそう」と感じている初心者は多いですが、実はSQLの基本は4つの命令を覚えるだけで日常的な操作の大半をこなせます。本記事では、データベースとSQLの基礎から、実際によく使うSQL文の書き方まで、コードを交えながらわかりやすく解説します。
Ⅰ. データベースとSQLの基礎
1. データベースとは
データベース(DB)とは、データを整理して保存し、必要なときに素早く取り出せるようにした「データの倉庫」です。Webサービスで会員登録すると、あなたの名前・メールアドレス・パスワードはデータベースに保存されます。ショッピングサイトの商品一覧や注文履歴も、すべてデータベースで管理されています。
データベースの中でも最も広く使われているのがリレーショナルデータベース(RDB)です。データをExcelの表のような「行と列」の形式で管理するのが特徴で、MySQL・PostgreSQL・Oracle Databaseなどが代表的なシステムです。
2. SQLとは
SQL(Structured Query Language)とは、リレーショナルデータベースを操作するための専用の言語です。「エスキューエル」または「シーケル」と読みます。
SQLはプログラミング言語(PythonやJavaScriptなど)ではありませんが、エンジニアであれば職種を問わず使う場面があります。フロントエンドエンジニアでも、バックエンドエンジニアでも、インフラエンジニアでも「データを確認したい」という場面は必ず来ます。
Ⅱ. まず覚えるべき4つのSQL操作
1. CRUD操作とは
データベース操作の基本はCRUDと呼ばれる4つの操作です。この4つを押さえれば、日常的なデータ操作はほぼカバーできます。
| 操作名 | SQL文 | 意味 |
|---|---|---|
| Create | INSERT | データを新しく追加する |
| Read | SELECT | データを取得・検索する |
| Update | UPDATE | 既存データを更新する |
| Delete | DELETE | データを削除する |
2. SELECT——データを取得する
最もよく使うSQL文がSELECTです。テーブルのデータを取得して表示します。
-- usersテーブルの全データを取得
SELECT * FROM users;
-- 名前とメールアドレスだけを取得
SELECT name, email FROM users;
*(アスタリスク)はすべての列を意味します。必要な列だけを指定するのが実務では基本です。
3. INSERT——データを追加する
新しい行(レコード)を追加するのがINSERT文です。
INSERT INTO users (name, email) VALUES ('田中太郎', 'tanaka@example.com');
列名と値の順番を対応させて記述します。
4. UPDATE——データを更新する
既存のデータを書き換えるのがUPDATE文です。WHERE句(後述)を忘れると全データが書き換わるので注意が必要です。
UPDATE users SET email = 'new@example.com' WHERE id = 1;
5. DELETE——データを削除する
DELETE文も同様に、WHERE句がないと全データが削除されます。実行前に必ず確認しましょう。
DELETE FROM users WHERE id = 1;
Ⅲ. SELECT文をもっと使いこなす
1. WHERE句で条件を絞る
SELECTにWHERE句を加えると、条件に合うデータだけを取得できます。
-- 年齢が30以上のユーザーを取得
SELECT * FROM users WHERE age >= 30;
-- 名前に「田中」が含まれるユーザーを取得
SELECT * FROM users WHERE name LIKE '%田中%';
2. ORDER BY・LIMIT——並び替えと件数制限
取得したデータを並び替えたり、件数を制限することもできます。
-- 登録日が新しい順に10件取得
SELECT * FROM users ORDER BY created_at DESC LIMIT 10;
3. GROUP BY・集計関数——データを集計する
GROUP BYを使うと、グループ別の集計ができます。COUNT・SUM・AVGなどの集計関数と組み合わせます。
| 集計関数 | 意味 | 例 |
|---|---|---|
| COUNT() | 件数を数える | ユーザー数を集計 |
| SUM() | 合計を計算する | 売上の合計金額 |
| AVG() | 平均を計算する | 商品の平均価格 |
| MAX() | 最大値を取得 | 最高売上日 |
| MIN() | 最小値を取得 | 最安値商品 |
Ⅳ. 実際にSQLを試す方法
1. 環境を用意する
SQLの練習には、インストール不要のブラウザ環境がおすすめです。
| サービス名 | 特徴 | 費用 |
|---|---|---|
| SQLFiddle | ブラウザでSQL実行・複数DBに対応 | 無料 |
| DB Fiddle | シンプルで使いやすい | 無料 |
| Progate SQL | ステップ形式で学べる | 無料〜有料 |
| MySQL公式 | ローカルにインストールして使う本格環境 | 無料 |
2. 練習のコツ
SQLは「読む」だけでなく「実際に書いて動かす」ことで身につきます。まずSQLFiddleでサンプルテーブルを作り、SELECT・WHERE・ORDER BYを組み合わせて思った通りのデータが取れるまで試行錯誤するのが最も効果的な学習方法です。
Ⅴ. まとめ
SQLはシンプルな4つの操作(SELECT・INSERT・UPDATE・DELETE)から始まり、WHERE・ORDER BY・GROUP BYを加えることで実務レベルの操作が可能になります。データベースを扱うスキルはエンジニアとして非常に需要が高く、バックエンド開発・データ分析・インフラ管理など幅広い場面で活躍します。まずはブラウザで動く練習環境を使って、SELECT文を一行ずつ試してみましょう。