2012-10-05 90 views
5

在Sqlite中,我可以知道如何刪除最後10條記錄嗎?我寫了以下代碼,但似乎根本不工作。如何刪除sqlite中的最後10條記錄

delete from tb_news where newsid = (SELECT newsid from tb_news order by newsid asc limit 10) 

回答

7

您可以使用

delete from tb_news where newsid IN 
(SELECT newsid from tb_news order by newsid desc limit 10) 
1

將您的SQL語句更改爲以下內容。

delete from tb_news where newsid IN (SELECT newsid from tb_news order by newsid DESC limit 20) 

備註:sqllite可能不支持子查詢中的LIMIT。

+0

它應該是DESC而不是ASC。 –

+0

@YaqubAhmad我已更正答案,謝謝指出。 – Lipongo

0

你試過嗎?

delete from tb_news where newsid IN (SELECT newsid from tb_news order by newsid asc limit 20) 

我不知道你的表結構,但也許它應該是DESC而不是ASC。我的意思是DESC會給你最大的ID(最新的)。

+0

它應該是DESC而不是ASC。 –

相關問題