SQL INSERT UPDATE DELETE TRUNCATE

2024/06/09に公開

このページでは、SQLのデータの登録・更新・削除について記述します。

データの登録(INSERT文)

データをデータベースに新しく登録するには、INSERT文を使用します。
以下に、基本的なINSERT文の構文を示します。

INSERT INTO テーブル名 (1,2,3, ...)
VALUES (1,2,3, ...);

複数行を同時に登録する場合

値リストをカンマ区切りで繋ぎます。

INSERT INTO テーブル名 (1,2,3, ...)
VALUES (1,2,3, ...),(1,2,3, ...);

列リストの省略

テーブルの前列に対してデータを指定して挿入する場合、列リストは省略できます。

INSERT INTO テーブル名
VALUES (1,2,3, ...),(1,2,3, ...);

NULLを挿入する場合

NULLを挿入する場合、値リストにNULLをそのまま記述する。

INSERT INTO テーブル名 (1,2,3, ...)
VALUES (1, NULL,3, ...);

明示的にデフォルト値を利用する場合

INSERT INTO テーブル名 (1,2,3, ...)
VALUES (1, DEFAULT,3, ...);

暗黙的にデフォルト値を利用する場合

INSERT INTO テーブル名 (1,3, ...) -- 列リストから列2を削除
VALUES (1,3, ...);  -- 値リストから値2削除

他のテーブルからデータをコピーする場合

INSERT INTO 受け取るテーブル名 (1,2,3, ...)
SELECT1,2,3, ...
FROM コピー元テーブル名
WHERE 条件;

データの更新(UPDATE文)

既存のデータを更新するには、UPDATE文を使用します。
以下に、基本的なUPDATE文の構文を示します。

UPDATE テーブル名
SET1 =1
WHERE 条件;

複数行を同時に更新する場合

カンマ区切りで繋ぎます。

UPDATE テーブル名
SET1 =1,2 =2, ...
WHERE 条件;

データの削除(DELETE文)

データを削除するには、DELETE文を使用します。
以下に、基本的なDELETE文の構文を示します。

DELETE FROM テーブル名
WHERE 条件;

TRUNCATE文

TRUNCATE文では、必ずテーブルの全行を削除します。
WHERE句で条件を指定して一部削除などはできません。

TRUNCATE テーブル名;

参考文献

SQL 第2版 ゼロからはじめるデータベース操作

Discussion