如何删除最旧的mysql表记录,但最新留下1000

时间:2014-01-27 12:40:03

标签: mysql sql

什么查询删除最旧的mysql表记录,但保留1000最新。记录的记录并不重要 - 我需要1000个最新记录。

1 个答案:

答案 0 :(得分:8)

delete from your_table
where id not in
(
   select * from 
   (
      select id from your_table
      order by id desc
      limit 1000
   ) x
)

内部select返回最近的1000个ID。另一个delete会删除内部select中的所有记录。

相关问题