在 MySQL 5.0 中刪除重複行
提供的程式碼使用子查詢來識別 posts 表中的重複 ID 並嘗試刪除它們。然而,這種方法與 MySQL 5.0 不相容。為了避免這個問題,我們需要修改程式碼以使用不同的語法。
重寫程式碼
從posts 表中刪除重複行的修改後的程式碼是如下:
DELETE FROM posts WHERE id IN ( SELECT id FROM ( SELECT id, COUNT(id) AS duplicate_count FROM posts GROUP BY id HAVING duplicate_count > 1 ) AS subquery )
此程式碼使用巢狀子查詢來識別重複的ID。子查詢首先按 id 列對行進行分組,併計算每個 ID 出現的次數。然後選擇重複計數大於 1 的行,並將其 ID 作為結果集傳回。
外部查詢使用 IN 運算子將子查詢傳回的 ID 與 posts 表中的 ID 進行比對。這可以確保只刪除重複的行。
附加說明
以上是如何在MySQL 5.0中刪除重複行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!