많은 비슷한 항목을 검색했지만 아직 작동하지 않으려 고합니다. 몇 가지 테이블 조인을 한 후에 특히 하나의 열을 그룹화하려고합니다. 어떤 도움이 크게 감사합니다 바램SQL Server - 여러 조인과 문자열을 사용한 그룹화
OUTPUT 오늘
Account System System Plan Code Account Plan Code Request
12345 Sys1 Sys1 P1 12345 P1 00001
12345 Sys1 Sys1 P2 NULL NULL NULL
12345 Sys2 Sys2 P3 12345 P3 00002
34567 Sys1 Sys1 P1 NULL NULL NULL
34567 Sys1 Sys1 P2 34567 P2 00003
45678 Sys3 Sys3 P4 NULL NULL NULL
원하는 출력
Account System System Plan Code Account Plan Code Request
12345 Sys1 Sys1 P1 12345 P1, P2 00001
12345 Sys2 Sys2 P3 12345 P3 00002
34567 Sys1 Sys1 P2 34567 P1,P2 00003
45678 Sys3 Sys3 P4 NULL NULL NULL
나는 몇 테이블을 조인하고 있는데 시스템에 각각의 고유 한 계정 당 하나의 행으로 계획 코드를 결합하려는 매핑.
- TAB1 = 계정 및 시스템
- TAB2 = 시스템 및 계획 코드 (어떤 계획 코드 쇼는 각 시스템에 관련되는 매핑)
- tab3에 = 계정, 계획 코드, 요청 #
GROUP BY 한 열을 사용하여 GROUP BY식이 아닌 오류가 발생하여 그룹이 손실됩니다. 그럼 모든 열을 포함하고 출력을 전혀 변경하지 않습니다.
SELECT A.ACCOUNT, A.SYSTEM, B.SYSTEM, B.PCODE, C.ACCOUNT, C.PCODE, C.REQUEST
FROM MYDB.TAB1 A
LEFT JOIN MYDB.TAB2 B
ON A.SYSTEM = B.SYSTEM
LEFT JOIN MYDB.TAB3 C
ON A.ACCOUNT = C.ACCOUNT AND B.PCODE = C.PCODE
WHERE A.ACCOUNT IS NOT NULL
ORDER BY A.ACCOUNT
실제 출력의 열 수가 표시된 쿼리와 일치하지 않습니다. 출력을 생성 한 실제 쿼리를 게시 할 수 있습니까? –
실제 쿼리 인 출력을 업데이트 할 것입니다. 일부는 중복 된 이후로 내가 신경을 쓰는 열에만 초점을 맞춘 출력 미리보기를 입력했습니다. 나는 그것을 지금 명백하게 새롭게 할 것이다. 그것을 보아 주셔서 고마워요 – Yume
여기서 주요 도전은 '계획 코드'를 연결하는 것입니다. 왜냐하면 MS SQL Server에는 'GROUP_CONCAT'과 직접적인 유사점이 없기 때문입니다. 나머지는 사소한 것처럼 보인다. –