mysql删除表中所有数据_MySQL删除或清空表中数据的方法

原标题:MySQL删除或清空表中数据的方法

要想把MySQL中的数据删除或清空,可以通过两种方法来实现:DELETE语句和TRUNCATE TABLE语句。

27d632ccf2589f9f0059cde2d377ae2c.png

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;

(源自:美国主机-BlueHost)返回搜狐,查看更多

责任编辑:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值