2010-08-16 28 views
0

我正在尋找一種工具,可以讓我輕鬆管理MySQL數據庫中的重複項。使用phpmyadmin管理重複項

從某種意義上說,我不想讓我的專欄'獨特',但我想查看恰好在一列中具有完全相同值的記錄。

這將是很好,如果我可以製作這樣的SQL查詢,只顯示這樣的記錄使用通常的接口。

回答

3

爲了得到重複,只是使用在桌子上自聯接:

select t1.id, t2.id, t1.value 
from table t1 
inner join table t2 on t1.value=t2.value 
where t1.id < t2.id 

的t1.id < t2.id將確保每一個重複只會出現一次。

+0

迂迴,但很精彩!現在我在爲你或者hollsk授予'回答'之間被撕裂了! – qdot 2010-08-17 08:43:32

3

有可能需要一個查詢來選擇他們:

select myColumn, count(myColumn) as myCount from myTable group by myColumn having myCount > 1 order by myCount; 
+0

幾乎完美!你能分享兩個更多的花絮: 1)看看所有發生共享相同myColumn值的記錄,而不是第一個? 2)通過組合列來分組? – qdot 2010-08-16 19:48:43

+0

hm - 上面的代碼應該按原樣返回所有重複項。 count()給你什麼數字?也可以通過添加另一個列名和逗號來分組 - 另一個列由myColumn組成,myOthercolumn具有...' – hollsk 2010-08-16 20:05:53

0

在wimvds答案上面; phpMyAdmin顯示以下警告:

當前選擇不包含唯一列。網格編輯,複選框,編輯,複製和刪除功能不可用。

要啓用編輯/複製/刪除,第一行可以改變之一:

select t1.id, t1.value 

select t2.id, t2.value 

因此,你可能想使用wimvds的查詢審查副本(也許沿與其他字段),然後第二個查詢來編輯或刪除重複的記錄。

(也許還有一種方法可以列出重複項;在相鄰行中,並且可編輯?)