테이블(type 001은 입금, 002는 출금)
이라고 할때 결과물을
대략 이런식으로 데이터를 추출할려고 합니다.
어떻게 풀어나갈야 할지 조언좀 부탁드립니다 ^^;;
WITH TMP AS ( select BUYNO = 1, TYPE = 1, AMT=10000 UNION ALL select BUYNO = 1, TYPE = 2, AMT=10000 UNION ALL select BUYNO = 2, TYPE = 1, AMT=18000 UNION ALL select BUYNO = 2, TYPE = 1, AMT=12000 UNION ALL select BUYNO = 2, TYPE = 2, AMT=30000 )
SELECT A.BUYNO , [입금] = A.AMT , [출금] = B.AMT FROM (SELECT *, RN = ROW_NUMBER() OVER(ORDER BY BUYNO) FROM TMP WHERE TYPE = 1) A LEFT OUTER JOIN (SELECT * , RN = ROW_NUMBER() OVER(ORDER BY BUYNO) FROM TMP WHERE TYPE = 2) B ON A.BUYNO = B.BUYNO AND A.RN = B.RN
항상 크로스 조인만 있는것처럼 써왔던것이 충격으로 오네요^^; 공부 다시 해야겠습니다 ㅎㅎ 감사합니다~~