我正在修改phpBB的表,以便爲朋友建立雙向關係。不幸的是,已添加朋友的人創建了重複行:刪除MySQL中的雙向副本
user1 user2 friend
2 3 true
3 2 true
2 4 true
所以我想從上面的示例中刪除第1行和第2行。目前,這是我的查詢生成(不大氣壓工作):
DELETE FROM friends WHERE user1 IN (SELECT user1 FROM (SELECT f1.user1 FROM friends f1, friends f2 WHERE f1.user1=f2.user2 AND f1.user2=f2.user1 GROUP BY f1.user1) AS vtable);
通過Mysql Duplicate Rows (Duplicate detected using 2 columns)啓發,但不同的是,我沒有獨特的ID列,我想從具有遠離額外的列。
謝謝,一些改變,我想出了這個:DELETE FROM F1 F1朋友朋友加盟F2 ON F2.user1 = F1.user2 AND F2.user2 = F1.user1 WHERE F1。 user1
2010-08-20 19:22:33