DELETE 構文
DELETE 文を使用すると、表から行を削除できます。
DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM table_name
[WHERE where_definition]
[ORDER BY ...]
[LIMIT row_count]
または
DELETE [LOW_PRIORITY] [QUICK] [IGNORE] table_name[.*] [, table_name[.*] ...]
FROM table-references
[WHERE where_definition]
または
DELETE [LOW_PRIORITY] [QUICK] [IGNORE]
FROM table_name[.*] [, table_name[.*] ...]
USING table-references
[WHERE where_definition]
[LOW_PRIORITY][QUICK][IGNORE]は通常使うことは無いと思いますが紹介しておきます。
オプション | 意味 |
---|---|
LOW_PRIORITY | 他のクライアントによるそのテーブルからの読み取りがなくなるまで、DELETEの実行は遅らされます。 注意: このオプションは通常 MyISAM テーブルに対しては使用しない。 |
QUICK | 削除処理の間、インデックスのマージを行わないので一部の削除操作では処理速度が向上します。 |
IGNORE | DELETEに失敗してもエラーを返しません。 |
LIMIT | 削除するレコード数を指定します。 |
よく使うDELETE構文
DELETE FROM テーブル名 [WHERE 条件式];
WHERE 句を省略すると全てのレコードが対象になります。
全てのレコードを削除するには
DELETE FROM item;
特定のレコードを削除するには
DELETE FROM item WHERE item_id = 1;