0
샘플 데이터 :SQL 그룹 by 및 조합?
Serial | Name
-------------------------
1 | aaaa
1 | bbbb
1 | cccc
2 | aaaa
3 | bbbb
3 | aaaa
3 | cccc
4 | bbbb
4 | cccc
serial
에 의해 I 그룹을 경우 나는 4 개 개의 그룹이있다. 모든 데이터를 그룹화 한 후 record count in group
repeat count | name in record count | repeat repeat count |
----------------------------------------------------------|
1 | aaaa | 1 |
2 | bbbb,cccc | 1 |
3 | aaaa,bbbb,cccc | 2 |
에 의해
Serial | record count in group | name in group |
----------------------------------------
1 | 3 | aaaa,bbbb,cccc |
2 | 1 | aaaa |
3 | 3 | aaaa,bbbb,cccc |
4 | 2 | bbbb,cccc |
및 그룹 , 난이 원하는 : (마지막 결과를 나의 예상)
난 다음 어떻게 달성 할 수 있습니까?
| Name | record count in group | Available Count |
|------------------------------------------------|
| aaaa | 3 | 2 | (there are 2 aaaa in 3 combinations)
|------------------------------------------------|
| aaaa | 1 | 1 | (there is 1 aaaa in 1 combination)
|------------------------------------------------|
| bbbb | 3 | 2 | (there is 2 bbb in 3 combinations)
|------------------------------------------------|
| bbbb | 2 | 1 | ...
|------------------------------------------------|
| cccc | 3 | 2 |
|------------------------------------------------|
| cccc | 2 | 1 |
|------------------------------------------------|
나는 다음과 같이 몇 가지 일을 시도 : SQL FIDDLE DEMO
SELECT Serial, COUNT(Serial) GroupCount, Name =
STUFF((SELECT ', ' + Name
FROM your_table b
WHERE b.Serial = a.Serial
FOR XML PATH('')), 1, 2, '')
FROM your_table a
GROUP BY Serial
하지만 난 당신이 실제적인 것에 대해 잘 모르겠어요 내 예상 된 결과를