我正在寻找一种工具,可以让我轻松管理MySQL数据库中的重复条目。
从某种意义上说,我不想让我的列'UNIQUE',但我想查看碰巧在列中具有完全相同值的记录。
如果我能够使用通常的界面制作这样一个仅显示此类记录的SQL查询,那将是很好的。
答案 0 :(得分:3)
应该可以通过查询选择它们:
select myColumn, count(myColumn) as myCount from myTable group by myColumn having myCount > 1 order by myCount;
答案 1 :(得分: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&lt; t2.id将确保每个副本只出现一次。
答案 2 :(得分:0)
我不确定界面,但这个工具当然是前者:http://www.dodownload.com/business+manage/access+database/mysql+delete+remove+duplicate+entries+software.html
答案 3 :(得分:0)
在wimvds上面回答; phpMyAdmin显示以下警告:
当前选择不包含唯一列。网格编辑,复选框,编辑,复制和删除功能不可用。
要启用编辑/复制/删除,可以将第一行更改为:
select t1.id, t1.value
或
select t2.id, t2.value
因此,您可能希望使用wimvds的查询来查看重复项(可能与其他字段一起),然后使用第二个查询来编辑或删除重复记录。
(也许还有一种方法可以列出重复项;在相邻行中,可编辑?)