簡體   English   中英

MySQL刪除表的第5個元素

[英]Mysql delete 5th element of a table

我有一張桌子:

 ID Friend
John    Rita
John    Jack
Jack    Rita
Rita    John
John    Peter
John    Owen
John    Eric
John    Louis

我想編寫一個查詢,刪除第5個元素之后的所有ID 換句話說,我想為每個ID最多保留5個friends

我曾嘗試使用group by或類似的方法,但是現在我不知道該怎么做。

結果必須是:

  ID    Friend
John    Rita
John    Jack
Jack    Rita
Rita    John
John    Peter
John    Owen
John    Eric

簡短的回答,不。 原因是RDBMS不保證輸入順序

如果需要確定要刪除的行,則需要知道順序。 我建議先添加一個自動遞增的主鍵列。 由此,您將至少確定條目的順序。 例如:

ALTER TABLE table_name ADD column_name INT AUTO_INCREMENT PRIMARY KEY;

注意:這將僅保證將來輸入的順序, 而不保證先前插入的輸入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM