2012-12-19 5 views
11

내 문제를 해결하는 가장 좋은 방법을 알려주십시오. 나는 아래의 결과와 같은 도시에서 중복 거리의 수를하고 싶은 SQL 개수 및 그룹 중복

Street  | City 

avenue 123 | New York 
avenue 123 | New York 
avenue 20 | New York 
avenue 35 | Chicago 
avenue 12 | Chicago 
avenue 123 | Chicago 
avenue 12 | Chicago 
avenue 12 | Chicago 

아래처럼 테이블에 중복을 계산하는 방법에 문제가

을 파악 했는가?

결과 :

Street  | City | Duplicates 

avenue 123 | New York | 2 
avenue 12 | Chicago | 3 

답변

14

사용 GROUP BY, COUNTHAVING :

SELECT Street, City, COUNT(*) 
FROM yourtable 
GROUP BY Street, City 
HAVING COUNT(*) > 1 

온라인으로 작업을 참조하십시오 : sqlfiddle

3

시도 :

SELECT street, city, COUNT(*) AS duplicates 
FROM yourtable 
GROUP BY street, city 
HAVING COUNT(*) >1 

중복이없는 행을 표시하려면 HAVING COUNT(*) > 1을 제거하십시오.

+0

많은 감사합니다 :) 그냥 필요한. – Tom