删除数据是指对表中存在的记录进行删除,这是数据库的常见操作,比如一个学生转学了,就需要在 student 表中将其信息记录删除。MySQL 中使用 DELETE 语句来删除表中的记录,其语法格式如下所示:
DELETE FROM 表名 [WHERE 条件表达式]
在上面的语法格式中,“表名”指定要执行删除操作的表,[WHERE 条件表达式] 为可选参数,用于指定删除的条件,满足条件的记录会被删除。DELETE 语句可以删除表中的部分数据和全部数据,下面就对这两种情况进行讲解。
删除部分数据是指根据指定条件删除表中的某一条或者某几条记录,需要使用
WHERE 子句来指定删除记录的条件。
例如,在 student 表中,删除 id 字段值为11 的记录,在删除数据之前,首先使用查询语句查看 id 字段值为 11 的记录,执行结果如下所示:
mysql> select * from student
-> where id=11;
+------+----------+-------+
| id | name | grade |
+------+----------+-------+
| 11 | zhangfei | 80 |
+------+----------+-------+
1 row in set (0.00 sec)
从查询结果可以看到,student 表中有一条 id 字段值为 11 的记录,下面使用DELETE语句删除这条记录,DELETE 语句如下所示:
mysql> delete from student
-> where id=11;
Query OK, 1 row affected (0.01 sec)
从执行结果可以看出,DELETE语句成功执行,接下来再次通过查询语句查看 id 字段值为 11的记录,执行结果如下所示:
mysql> select * from student
-> where id=11;
Empty set (0.00 sec)
从查询结果可以看到记录为空,说明id字段值为 11 的记录被成功删除。在执行删除操作的表中,如果有多条记录满足 WHERE 子句中的条件表达式,则满足条件的记录都会被删除。
例如,在 student 表中,删除 id 字段值大于 5 的所有记录,在删除数据之前,首先使用查询语句查看 id 字段值大于 5 的所有记录,执行结果如下所示:
mysql> select * from student
-> where id>5;
+------+-----------+-------+
| id | name | grade |
+------+-----------+-------+
| 6 | lilei | 80 |
| 7 | hanmeimei | 80 |
| 8 | poly | 80 |
| 9 | liubei | 80 |
| 10 | guanyu | 80 |
+------+-----------+-------+
5 rows in set (0.00 sec)
从查询结果可以看到,student 表中 id 字段值大于 5 的记录有 5 条,下面使用DELETE 语句删除满足条件的这 5 条记录,DELETE 语句如下所示:
mysql> delete from student
-> where id>5;
Query OK, 5 rows affected (0.00 sec)
执行 DELETE 语句删除 student 表中的数据,然后再次通过査询语句查看 id 字段值大于 5 的记录,执行结果如下所示:
mysql> select * from student
-> where id>5;
Empty set (0.00 sec)
从查询结果可以看到记录为空,说明id 字段值大于 5 的记录被成功删除了。
标签:段值,删除,记录,student,MySQL,id,DELETE From: https://blog.csdn.net/W_Fe5/article/details/141124697