我的SQL不错,但iOS上的SQLite不断吸引我。
我有一个表,希望将行数限制在500左右,因此当它达到触发点550时,它将删除最早的50行。
它在滚动,因此随着时间的流逝,id不会总是从1开始,并且用户可以删除行,因此id是非顺序的。
我有一个juliandate
字段(double
),但是我不确定这有什么用
DELETE FROM contents WHERE id > '0' ORDER BY id DESC LIMIT 0, 50
DELETE FROM contents ORDER BY id DESC LIMIT 0, 50
文档说可以,但是失败。有任何想法吗?
最佳答案
遵循这些思路,也许?
delete from contents where juliandate <= (
select max(juliandate) from (
select juliandate from contents order by juliandate limit 0, 50));
您可以使用id代替juliandate或任何其他随每次插入值增加的字段。