MySQL删除或清空表中数据的方法
要想把MySQL中的数据删除或清空,可以通过两种方法来实现:DELETE语句和TRUNCATE TABLE语句。下面美国主机侦探小编就来介绍下这两种删除或清空MySQL表中数据的方法:
DELETE语句可以将表中所有记录都删除,也可以指定WHERE子句,对要删除的记录进行选择;而TRUNCATE TABLE是删除表中的所有行,也就是说将删除表中的所有记录。很明显,DELETE语句更灵活一些。
如果要清空MySQL表中所有数据,可使用下面两种方法:
DELETE FROM table_name
TRUNCATE TABLE table_name
注:“table_name”指的是要截断的表的名称或要删除其全部行的表的名称。
上面两个语句都可以清空MySQL表中数据,区别就在于DELETE可以通过WHERE语句选择要删除的记录,而且可以返回被删除的记录数,但执行速度不快;而TRUNCATE无法删除指定的记录,而且不能返回被删除的记录。
所以,要想删除MySQL数据中指定的记录时,就只能用DELETE指定WHERE子句来实现了,语句如下:
DELETE FROM table_name WHERE name_id=3;
注:“table_name”指的是要截断的表的名称或要删除其全部行的表的名称;“name_id=3”指的是指定的具体的记录。
另外MySQL的DELETE语句支持ORDER BY和LIMIT子句,这两个子句可以更好地控制要删除的记录,比如我们只想删除WHERE子句过滤出来的记录的一部分,就可以LIMIT来实现;如果想删除后几条记录,可以通过ORDER BY和LIMIT配合使用。
LIMIT子句用法:DELETE FROM table_name WHERE name = 'N' LIMIT 6;
上面的例子表示删除table_name表中name等于“N”的前6条记录,但一般MySQL并不确定删除的这6条记录是哪6条,所以为了保险可以使用ORDER BY对记录进行排序:
ORDER BY和LIMIT配合用法:DELETE FROM table_name WHERE name = 'N' ORDER BY id DESC LIMIT 6;
以上就是小编对MySQL删除或清空表中数据的方法的分享,希望能帮助到大家。
您可能感兴趣的文章
- 12-20使用DataGrip连接Hive的详细步骤
- 12-20debian10 mariadb安装过程详解
- 12-20MySQL索引失效的几种情况详析
- 12-20详解mysql持久化统计信息
- 12-20Robo可视化mongoDb实现操作解析
- 12-20MySQL 字段 LIKE 多个值
- 12-20Redis fork进程分配不到内存解决方案
- 12-20mysql插入前判断数据是否存在的操作
- 12-20基于navicat连接登录windows10本地wsl数据库
- 12-20Linux安装MariaDB数据库的实例详解


阅读排行
推荐教程
- 12-07mysql存储过程太慢怎么办
- 12-06redis通信协议(protocol)
- 12-05mysql的事务,隔离级别和锁用法实例分析
- 12-04MySQL一次性创建表格存储过程实战
- 12-03深入理解Redis内存淘汰策略
- 12-20PhpMyAdmin出现错误数据无法导出怎么办?
- 12-19Redis中实现查找某个值的范围
- 12-15浅析mysql迁移到clickhouse的5种方法
- 12-15CentOS7 64位下MySQL5.7安装与配置教程
- 12-14Mysql大型SQL文件快速恢复方案分享





