2025年10月29日水曜日

SQLとは?命令文の基本とデータ操作の仕組み|SELECT・INSERT・UPDATE・DELETEをわかりやすく解説

SQLとは?命令文の基本とデータ操作の仕組み

SQL(エスキューエル)は、データベースに「何をしてほしいか」を伝えるための標準言語です。
Excel の関数のように複雑な操作も、SQL なら数行で正確かつ高速に処理できます。
本記事では、SQL の全体像と 4 大基本命令(SELECT・INSERT・UPDATE・DELETE)をやさしく解説します。
はじめての方でも今日から手を動かせるよう、文法のコツと実行例をセットで紹介します。

目次

SQLとは?できることの全体像

SQLは「データベース用の指示書」

SQL は、データベースに対して保存する。
取り出す。
更新する。
削除する。といった操作を正確に伝えるための指示書です。
文章のような読みやすい構文で、誰が読んでも同じ意味になるのが特徴です。

代表的な利用シーン

  • 業務システムのデータ抽出や集計。
  • Web/EC の受注・会員データの管理。
  • BI/レポーティングの元データ作成。

SQLの文法の基本(句の並び順)

SELECT 文の句は「読みやすい順」ではなく「決まった順」

SQL は英語の語順に似ていますが、実は句の並び順が厳密に決まっています
例として、最もよく使う SELECT 文の並び順は次のとおりです。


SELECT 列一覧
FROM   テーブル
WHERE  条件
GROUP BY 列
HAVING 集計条件
ORDER BY 並び替え

覚え方は「選ぶ→どこから→どんな条件→どう集める→集計条件→どう並べる」。
書き間違えた順序では動作しないため、最初に順番を体で覚えるのがコツです。

4つの基本命令:SELECT / INSERT / UPDATE / DELETE

SELECT:データを取り出す

はじめに学ぶのは SELECT です。
テーブルから必要な列・行だけを取り出します。


-- 例:Customers テーブルから全列を取得
SELECT * FROM Customers;

-- 例:必要な列だけ取得(Name と City)
SELECT Name, City
FROM Customers;

-- 例:東京の顧客だけ、名前順で取得
SELECT CustomerID, Name, City
FROM Customers
WHERE City = '東京'
ORDER BY Name ASC;

「*」は全列取得を意味しますが、実務では列名を明示するのが基本です。

INSERT:データを追加する

行(レコード)を新しく追加します。


INSERT INTO Customers (Name, City)
VALUES ('田中太郎', '東京');

複数行を一度に追加することもできます。


INSERT INTO Customers (Name, City)
VALUES ('佐藤花子','大阪'),
       ('山田一郎','名古屋');

UPDATE:既存データを更新する

条件に合致する行を更新します。
WHERE を書き忘れると全行更新になるため注意が必要です。


-- 例:顧客ID=100 の City を「横浜」に更新
UPDATE Customers
SET City = '横浜'
WHERE CustomerID = 100;

DELETE:データを削除する

行を削除します。
こちらも WHERE 句の付け忘れに注意します。


-- 例:顧客ID=200 の行を削除
DELETE FROM Customers
WHERE CustomerID = 200;

実務では、すぐ削除せず「削除フラグ」を立てる論理削除を採用することも多いです。

よくあるつまずきポイントと回避策

1.全件更新・全件削除の事故

WHERE を書き忘れると全件が対象になります。
UPDATE / DELETE は必ず先に SELECT で対象件数を確認する習慣をつけましょう。


-- まずは対象を確認
SELECT * FROM Customers WHERE City = '東京';

-- 件数・内容を確認後に更新
UPDATE Customers SET City = '横浜' WHERE City = '東京';

2.文字列のクォーテーション忘れ

文字列は '~' で囲みます。
数値は不要ですが、日付は文字列として渡すのが安全です。

3.並び順が期待どおりにならない

SQL は ORDER BY を書かない限り、並び順は保証されません。
表示順を固定したい場合は必ず ORDER BY を指定します。

4.NULL(ヌル)の扱い

NULL は「空文字」や「0」とは別物です。
比較するときは IS NULL / IS NOT NULL を使用します。


SELECT * FROM Customers WHERE Phone IS NULL;

学習の進め方(実務で役立つ順序)

最短で戦力になる 6 ステップ

  • STEP1: SELECT の基本(列指定・WHERE・ORDER BY)。
  • STEP2: 集計(GROUP BY・集計関数)。
  • STEP3: JOIN(テーブル結合)。
  • STEP4: INSERT / UPDATE / DELETE(更新系)。
  • STEP5: サブクエリ・CTE(読みやすいクエリ設計)。
  • STEP6: インデックスの基礎(高速化の入口)。

まとめ

この記事の要点

  • SQL はデータベース操作のための標準言語
  • 句の並び順を覚えると、読みやすく正確なクエリが書ける。
  • まずは SELECT を軸に、INSERT・UPDATE・DELETE を段階的に習得。
  • 事故防止の基本は「先に SELECT で対象確認」。
SQL Server学習シリーズ
◀ 【第2回】SQL Serverの仕組みとデータ保存の流れ
【第1回】SELECT文の基本構文と使い方 ▶
目次へ

🔸次回から 第1章:基礎クエリ(DMLの基礎) に入ります。 SELECT・WHERE・JOINなど、実務で最も使うSQLの基本構文を順に学びましょう。

参考リンク

SQL Server 解説用イメージ

0 件のコメント:

コメントを投稿