MySQL 的DELETE 语句用于删除表中的现有记录。
警告
您需要表的 DELETE 权限才能从中删除记录。
用法
DELETE FROM table_name
WHERE condition;
例子
请考虑下表了解学生是否持有驾驶执照:
|
student_id |
full_name |
年龄 |
has_license |
|---|---|---|---|
|
1 |
天空镇 |
17 |
0 |
|
2 |
本·戴维斯 |
19 |
1 |
|
3 |
特拉维斯·苹果 |
18 |
0 |
|
4 |
亚瑟·大卫 |
16 |
0 |
|
5 |
本杰明镇 |
17 |
1 |
可以使用此处的代码创建上述示例表。
删除单个记录
删除 'Ben Davis' 的记录,因为他现已离开学校:
DELETE FROM drivers_license
WHERE student_id = 2;
Query OK, 1 row affected (0.01 sec)
我们可以看到'Ben Davis'现已从drivers_license表中删除:
SELECT *
FROM drivers_license;
+------------+---------------+------+-------------+
| student_id | full_name | age | has_license |
+------------+---------------+------+-------------+
| 1 | Sky Towner | 18 | 0 |
| 3 | Travis Apple | 18 | 0 |
| 4 | Arthur David | 16 | 0 |
| 5 | Benjamin Town | 17 | 1 |
+------------+---------------+------+-------------+
警告
每当您在表格上执行DELETE 时都要小心。如果我们忘记添加WHERE子句,表中的所有记录都将被删除。
DELETE FROM drivers_license;
SELECT *
FROM drivers_license;
Empty set (0.01 sec)
删除多条记录
请考虑下表了解学生是否持有驾驶执照:
|
student_id |
full_name |
年龄 |
has_license |
|---|---|---|---|
|
1 |
天空镇 |
17 |
0 |
|
2 |
本·戴维斯 |
19 |
1 |
|
3 |
特拉维斯·苹果 |
18 |
0 |
|
4 |
亚瑟·大卫 |
16 |
0 |
|
5 |
本杰明镇 |
17 |
1 |
要删除 student_id 1 、 2 或 3 学生的记录:
DELETE FROM drivers_license
WHERE student_id IN (1, 2, 3);
SELECT *
FROM drivers_license;
+------------+---------------+------+-------------+
| student_id | full_name | age | has_license |
+------------+---------------+------+-------------+
| 4 | Arthur David | 16 | 0 |
| 5 | Benjamin Town | 17 | 1 |
+------------+---------------+------+-------------+
注意
在使用 DELETE 语句之前,请使用相同的条件执行 SELECT 语句,以查看到底要删除什么。此外,每当您对数据执行任何大型操作时,请务必先对其进行备份!
相关用法
- MySQL DES_ENCRYPT()用法及代码示例
- MySQL DEGREES方法用法及代码示例
- MySQL DES_DECRYPT()用法及代码示例
- MySQL DECODE( )用法及代码示例
- MySQL DEFAULT()用法及代码示例
- MySQL DECIMAL and NUMERIC用法及代码示例
- MySQL DEGREES()用法及代码示例
- MySQL DATE_FORMAT方法用法及代码示例
- MySQL DATEDIFF方法用法及代码示例
- MySQL DAYOFMONTH()用法及代码示例
- MySQL DAY方法用法及代码示例
- MySQL DAYOFYEAR()用法及代码示例
- MySQL DATE_ADD()用法及代码示例
- MySQL DATE方法用法及代码示例
- MySQL DAYNAME方法用法及代码示例
- MySQL DATEDIFF()用法及代码示例
- MySQL DAYOFMONTH方法用法及代码示例
- MySQL DAYNAME()用法及代码示例
- MySQL DAYOFWEEK方法用法及代码示例
- MySQL DAY()用法及代码示例
- MySQL DATE()用法及代码示例
- MySQL DAYOFYEAR方法用法及代码示例
- MySQL DATE_SUB()用法及代码示例
- MySQL DAYOFWEEK()用法及代码示例
- MySQL DIV用法及代码示例
注:本文由纯净天空筛选整理自Arthur Yanagisawa大神的英文原创作品 MySQL | DELETE。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
