2010-12-10 4 views
4

특정 필드의 문자열이 두 개 이상의 장소에서 중복되는 테이블의 모든 행을 찾아야합니다.데이터베이스에 중복 문자열이 있습니다.

MySQL 구문으로 수행 할 수 있습니까?

편집

나는 모든 행 얼마나 많은 중복 거기의 단지 수를 얻을 필요가있다. 필드를 편집하고 싶습니다. GROUP BYHAVING

SELECT * 
FROM `YourTable` 
WHERE `YourColumn` IN (
    SELECT `YourColumn` 
    FROM `YourTable` 
    GROUP BY `YourColumn` 
    HAVING COUNT(*) > 1 
) 

답변

7

예,이 같은 것을보십시오.

SELECT mycolumn, count(*) FROM mytable 
group by mycolumn 
having count(*) > 1 
+0

내 PHPmyadmin을 고정시킵니다. 어쩌면 내가 있기 때문에 +7000 행 – Cudos

+0

그것은 이상합니다. 큰 테이블에서 잘 작동합니다. 어쩌면 다른 쿼리가 잠금 문제의 원인 일 수 있습니까? –

+0

음 ... 설치시 문제가 있는지 확인하려고합니다. – Cudos

5

예, 사용 :

+0

모든 행을 표시해야합니다. 뿐만 아니라 카운트. 행을 편집 할 수 있기를 원합니다. – Cudos

+0

@Cudos SELECT에 다른 필드를 추가하여 필요한 필드를 가져올 수 있습니다. 예 : SELECT ID, field1, field2, mycolumn, count (\ *) from mytable 그룹 by mycolumn 개수 (*)> 1 – St0rM

관련 문제