截断此表的最有效方法是什么?

时间:2012-02-28 00:04:10

标签: sql sqlite

我的Android应用使用sqlite表,其中一列是时间戳。我需要将表截断为X最近的行。也就是说,我需要将表截断为X行,其中所有截断的行的时间戳都早于剩余的X行。

这可以仅使用SQL(ite)语句完成吗?我能想到的唯一方法需要大量的Java代码来解析表。

提前致谢...

1 个答案:

答案 0 :(得分:1)

您应该可以使用子查询执行此操作(警告:未测试)。例如,如果X==10

delete from table
where timestamp<
  (select timestamp from table 
    order by timestamp desc limit 1 offset 10
  );