Mysql 如何删除数据库中超过一定数量的条目

Mysql 如何删除数据库中超过一定数量的条目,mysql,sql,Mysql,Sql,我在mysql数据库中有大约110000000个条目。我想把它限制在100万个条目以内。我是如何考虑这样做的,分为三个步骤: 创建一个新表 使用Insert…SELECT…LIMIT 100000000插入新表。 删除旧表并重命名新表。 有没有办法改为使用删除查询来执行此操作?如果您知道确切的数字,可以删除行: delete t from t limit 10000000; 但是,使用您的方法可能会更快。不确定这是否有效,但听起来这正是您想要的: 从tbn_name LIMIT 100

我在mysql数据库中有大约110000000个条目。我想把它限制在100万个条目以内。我是如何考虑这样做的,分为三个步骤:

创建一个新表 使用Insert…SELECT…LIMIT 100000000插入新表。 删除旧表并重命名新表。
有没有办法改为使用删除查询来执行此操作?

如果您知道确切的数字,可以删除行:

delete t from t
    limit 10000000;

但是,使用您的方法可能会更快。

不确定这是否有效,但听起来这正是您想要的:


从tbn_name LIMIT 100000000中删除-从tbl_name中选择COUNT*。例如:

SELECT COUNT(*) FROM t
/* 110,000,000 */
DELETE FROM t LIMIT 10000 /* (110,000,000 - 100,000,000 = 10,000) */

上面的命令会删除100万行,还是保留100万行?上面的命令会删除10000000行。@David542但是它删除了哪些行是任何人都能猜到的。你能更具体一点吗?你有错误吗?还有别的消息吗?最终的结果是什么?