2011-09-20 5 views
0

나는 이와 같은 테이블을 가지고 있습니다.테이블에서 중복 항목 선택 및 중복 행의 모든 ​​필드 가져 오기

id day1 day2 day3 
1 411  523  223 
2 413  554  245 
3 417  511  209 
4 420  515  232 
5 422  522  212 
6 483  567  212 
7 456  512  256 
8 433  578  209 
9 438  532  234 
10 418  555  223 
11 460  510  263 
12 453  509  245 
13 441  524  233 
14 430  543  261 
15 456  582  222 
16 444  524  241 
17 478  511  211 
18 421  583  222 

2 일에 중복 값이있는 모든 ID를 선택하고 싶습니다. 내가

select day2,count(*) from resultater group by day having count(*)>1; 

을하고 있어요는 그룹 내의 모든 ID를 나열 할 수 있습니까?

답변

2
select day2,count(*), group_concat(id) 
    from resultater 
    group by day 
    having count(*)>1; 

트릭을해야합니다.

+0

정말로 감사했습니다. 다른 ID에서이 ID를 사용하려면 파서가있는 스크립트가 필요합니까? – Megimoo

+0

아니요,이 경우 day2에 트리거하는 것이 좋습니다. 위의 쿼리를 하위 쿼리로 포함 시키십시오. 'select ... from ... where day2 in day2 (결과 (*)> 1)에 대한 결과 그룹에서 day2를 선택하십시오. '와 같은 것. – glglgl

+0

물론, 당신이 말한 것은 이제 분명합니다. – Megimoo