如果记录数为 110,我想从我的 SQLite 表中删除前 10 条记录(即记录 1 到 10)。我的表中只有 100 条记录。如果记录数超过 100,则应删除这些记录,因此,如果我添加新记录,则也应仅存在 100 条记录。怎么可能使用 SQLite 查询,请提供您的建议。谢谢。
问问题
14072 次
3 回答
6
我收集到您希望通过在每次表超过 100 行时删除前“X”行来维护表中的 100 行。这是您可以执行的操作:
Delete from table_name where rowid IN (Select rowid from table_name limit X);
当您的 SQLite 表增长时,这将继续删除前“X”行。
于 2012-04-30T10:05:08.667 回答
1
首先,您必须执行一个返回表中最后 100 条记录的选择,然后使用 delete 命令删除结果中没有的所有 id,如下所示:
DELETE FROM tbl_name WHERE NOT EXISTS in (SELECT id FROM tbl_name ORDER BY id LIMIT 100 );
希望这可以帮助!
于 2012-04-30T02:34:05.187 回答
-3
DELETE FROM {{ table }} LIMIT 0, 10
我不完全确定这是否正确,我目前无法检查。
于 2012-04-30T02:30:15.017 回答