[SQL] 연결하여 그룹화 행
SQL연결하여 그룹화 행
나는이 테이블에서 가능하다 알고 싶다
ID Price ServiceID
1 50 11
1 -10 12
2 100 11
2 20 11
ID별로 그룹에, 가격 및 CONCATENATE 서비스 id,이 같은 합계 :
ID Price ServiceID
1 40 11,12
2 120 11
그것은 ID로 그룹에 오히려 간단하고 가격을 합하지만, CONCATENATE 서비스 ID는 나를 놀리는 것.
참여 주셔서 감사합니다.
해결법
-
==============================
1.사용하다:
사용하다:
select t.id, sum(t.price) , stuff(( select distinct ',' + cast(t2.ServiceID as varchar(max)) from @t t2 where t2.id = t.id for xml path('') ), 1, 1, '') from @t t group by t.id
산출:
----------- --------------------- --------------------- 1 40,00 11,12 2 120,00 11
from https://stackoverflow.com/questions/9139472/concatenate-grouped-rows by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] SELECT 작동하지 MySQL을 저장 프로 시저 (기본 질문) (0) | 2020.05.17 |
---|---|
[SQL] 대신 필터 테이블의 C # 목록을 기반으로 필터 SQL (0) | 2020.05.17 |
[SQL] 갭 임계 값보다 차이가 큰 테이블과 동일한 필터의 다른 레코드로부터 값을 취득하기위한 쿼리 (0) | 2020.05.17 |
[SQL] SQL0418N 오류 해결 방법 (0) | 2020.05.16 |
[SQL] 동적 파일 이름으로 복사 (0) | 2020.05.16 |