SQLITE:按行ID删除记录

时间:2016-06-15 17:08:00

标签: sql sqlite

我想删除sqlite DB中的最后1000条记录 以下语句执行时没有错误,但删除(影响)所有记录。

我使用以下SQL语句:

DELETE FROM LOGS WHERE (SELECT ROWID FROM LOGS ORDER  BY ROWID DESC LIMIT 1000)  

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

首先检查子查询返回最后1000条记录

SELECT ROWID FROM LOGS ORDER BY ROWID DESC LIMIT 1000

如果它返回正确的结果,您可以尝试以下查询。我在WHERE子句

中添加了ROWID IN
DELETE FROM LOGS WHERE ROWID IN (SELECT ROWID FROM LOGS ORDER BY ROWID DESC LIMIT 1000) 
相关问题