[英]Remove old row from SQLite
我們在Android上使用數據庫。 我們在其中收集了大量數據,以免使用戶的存儲混亂,我們希望進行清理。 在數據庫中,我們要保留35條最新記錄。 怎么做?
如果不提供更多信息,我將為您提供原始的SQL,因為我不知道您是如何實現SQLite數據庫的。
DELETE FROM my_table WHERE my_id NOT IN(SELECT my_id FROM my_table ORDER BY my_id DESC LIMIT 35)
這樣,您將刪除所有寄存器,但最近的35個寄存器(假設表中的主鍵已遞增)。
希望能幫助到你。
您必須考慮可以采用哪種方式對表格進行排序以獲取最新的35條記錄。 也許是ID或日期字段。 您應該檢查此帖子以獲取更多信息從SQL中的數據庫表中刪除除top n之外的所有內容
我認為您必須在where子句中添加“ LIMIT 35”。 像這樣的答案: https : //stackoverflow.com/a/7700422/1143172 。
我的意思是:
DELETE FROM [tbl_names] LIMIT 35
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.