![mysql如何仅保留最新10条数据而删除其他记录,第1张 mysql如何仅保留最新10条数据而删除其他记录,第1张](/aiimages/mysql%E5%A6%82%E4%BD%95%E4%BB%85%E4%BF%9D%E7%95%99%E6%9C%80%E6%96%B010%E6%9D%A1%E6%95%B0%E6%8D%AE%E8%80%8C%E5%88%A0%E9%99%A4%E5%85%B6%E4%BB%96%E8%AE%B0%E5%BD%95.png)
如果想准确控制最多不会超过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 tmpWHERE tb.pk_id<tmp.pk_iddelete from `mygame_article` where title in (select title from `mygame_article` group by id having count(title) >1) and id not in (select max(id) from `mygame_article` group by title having count(title) >1)
随手写了个,前半句是选择title重复的数据,后半句是剔除id最大的,delete是删除的意思。。应该 思路是没问题的,这边不方便帮您测试
评论列表(0条)