什麼查詢刪除最早的mysql表的記錄,但離開1000年最新的。無關緊要 - 我需要1000個最新的。如何刪除最早的mysql表的記錄,但讓1000年最新
3
A
回答
8
delete from your_table
where id not in
(
select * from
(
select id from your_table
order by id desc
limit 1000
) x
)
內部select
返回最近的1000個ID。另一個delete
將刪除內部select
以外的所有記錄。
+1
爲什麼'select * from(..)x'子查詢需要? –
+1
在Mysql中,您無法從您正在選擇的同一張表中刪除。但是你可以用中間的另一個子查詢來克服這個問題。 –
相關問題
- 1. MySQL的刪除最早的記錄表中的
- 2. 如何刪除表中的重複記錄,但保留最新?
- 3. SQL服務器重複記錄刪除最早的記錄,並保持最新
- 4. 刪除比最新記錄更早的activerecord行
- 5. SQL刪除最早的記錄表中的
- 6. 如何刪除在MySQL記錄並保持最新的日期
- 7. 刪除/忽略表中的重複記錄並只保留最早的記錄
- 8. 限制MySQL表爲sertain尺寸並自動刪除最早的記錄
- 9. MYSQL選擇距離給定日期最近但最早的最舊記錄
- 10. 在SQL中更新最早的記錄?
- 11. 獲取最早的記錄
- 12. MYSQL將多條記錄中的記錄除外最新記錄
- 13. MySQL:根據最大值刪除記錄
- 14. 從mysql中刪除最新的X條記錄db
- 15. 如何刪除最後一個記錄
- 16. 每個ID刪除比最新記錄舊2天的記錄
- 17. 刪除表中的重複記錄並保留最新的
- 18. 如何刪除MS SQL 2005中最新的20,000條記錄?
- 19. 如何檢查刪除的記錄是否是最後一條記錄MySQL PHP
- 20. 如何從MySQL獲取最新記錄?
- 21. Datarepeater刪除只刪除最高記錄
- 22. MYSQL:最新記錄總和
- 23. Mysql:更新最新記錄的字段
- 24. 訪問2010年更新表與最新的記錄
- 25. 如何從mysql表中刪除重複的記錄,但有1條記錄
- 26. Rails的刪除DB記錄,除了最新的10項
- 27. 如何刪除使用PDO插入到MySQL表中的最後一條記錄?
- 28. 回到最早的記錄一組
- 29. 挑選最早的日期記錄
- 30. 與最早的子記錄加入
發佈你的表結構和解釋根據該表的是最新的。 –
請顯示錶格的佈局。基本上,您需要一個指定插入順序的列,通常是一個自動遞增的ID或時間戳列。 –
從表中刪除ID不在(從表格中選擇ID按日期desc限制1000)? – David