mysql如何仅保留最新10条数据而删除其他记录

2024-11-15 06:21:45
推荐回答(1个)
回答(1):

如果想准确控制最多不会超过10条,应该只能用触发器

如果定时清理,假设是按照主键排序,并且主键是自增
先查出最新第10个主键ID,然后再删除主键小于"第10个主键ID"的所有记录
DELETE tb FROM tb_name AS tb ,(SELECT pk_id FROM tb_name ORDER BY pk_id desc LIMIT 9,1) AS tmp
WHERE tb.pk_id