删除mysql数据库表的n行

Jam*_*son 3 php mysql mysqli

我想让我的表最多有 10 行记录。我将运行 cronjob 并检查我的表中是否存在记录。

为此,我将首先插入尽可能多的不存在的记录,然后删除插入的 n 行以保持该行最多为 10 行。

如何编写 DELETE 查询?

maa*_*lls 5

首先提出一个简单的请求来收集表中的总行数。然后通过添加等于总数减 10 的 LIMIT 子句来运行删除查询。例如,对于包含 100 个条目的表,假设您要先删除最旧的条目,并且该表在created_at 属性中具有时间戳:

DELETE FROM mytable ORDER BY created_at ASC LIMIT 90
Run Code Online (Sandbox Code Playgroud)