MySQLのデータの追加・更新・削除に関する備忘録。
データの追加
基本
INSERT INTO `table_name` (`col_name1`, `col_name2`, ...) VALUES (value1, value2, ...);
複数のデータ追加
INSERT INTO `table_name` (`col_name1`, `col_name2`, ...) VALUES (valueA1, valueA2, ...), (valueB1, valueB2, ...), ...;
エラー時に追加させない
INSERT IGNORE INTO `table_name` (`col_name1`, `col_name2`, ...) VALUES (value1, value2, ...);
データの更新
基本
UPDATE `table_name` SET `col_name1`=value1 [, `col_name2`=value2 ...] [WHERE where_condition];
複数行同時に更新
UPDATE `table_name` SET
`col_name` =
CASE `primary_key`
WHEN 1 THEN 値1
WHEN 2 THEN 値2
WHEN 3 THEN 値3
END
WHERE `primary_key` IN (1,2,3);
以下と同様の効果
UPDATE `table_name` SET `col_name`=値1 WHERE `primary_key`=1;
UPDATE `table_name` SET `col_name`=値2 WHERE `primary_key`=2;
UPDATE `table_name` SET `col_name`=値3 WHERE `primary_key`=3;
データがなれけば追加、あれば更新
INSERT INTO `table_name` (`primary_key`, `col_name1`, `col_name2`, ...) VALUES (id, value1, value2, ...) ON DUPLICATE KEY UPDATE `col_name1`=値1, `col_name2`=値2, ...;
データがあれば以下と同様の効果
UPDATE `table_name` SET `col_name1`=値1, `col_name2`=値2, ... WHERE `primary_key`=id;
データの削除
DELETE FROM `table_name` [WHERE where_condition];