수량이 발생한 데이터의 상세 코드별로 수량 조회하기 0 2 1,338

by 마늘장아찌 [SQL Query] [2017.07.11 17:02:08]


 

샘플 쿼리는 아래와 같습니다.

t1의 qty에 수량이 발생하면 t2와 join하여 cd2별로 수량 내역을 한 row로 표시하고 싶은데요...

샘플의 결과는 다음과 같습니다. 

==========

cd   상세수량

==========

A    A1 3, A2 7

B    0

==========

 

WITH t1 AS
(SELECT 'A' cd, 10 qty FROM dual UNION ALL
 SELECT 'B' cd, 0 qty FROM dual)
SELECT *
FROM t1

WITH t2 AS
(SELECT 'A' cd, 'A1' cd2, 3 qty FROM dual UNION ALL
 SELECT 'A' cd, 'A2' cd2, 7 qty FROM dual)
SELECT *
FROM t2

감사합니다.

 

by 랑에1 [2017.07.11 17:39:55]
SELECT t1.cd, t2.t
FROM 
t1,
(
SELECT cd, listagg(cd2 || ' ' || qty, ', ') within GROUP(ORDER BY cd2) t FROM t2
GROUP BY cd
) t2
WHERE t1.cd = t2.cd(+)
ORDER BY t1.cd

 


by 마늘장아찌 [2017.07.12 09:11:30]

감사합니다. 잘 처리됩니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입