union결과 가로로 가능한가요? 0 6 1,102

by 열심열심 [2018.12.13 17:50:55]


예를 들어 

table1    
col1 col2 col3
10 20 table1
1 5 table2
4 4 table3
table2  
col4 col5
20 234
5 11
4 2

 

일떄 col3의 매개변수(table명)를 받아서 table1과 table2의 내용을 아래와 같이 가능할까요?

col1 col2 col3 col4 col5
10 20 table1 20 234
1 5 table2 5 11
4 4 table3 4 2

 

union을 사용하면 컬럼 수가 달라 되지 않아서 값이 세로로 아니라 가로로 나온다면 가능 할 것 같은데

join포인트도 딱히 없고.. 

힌트라도 주시면 감사하겠습니다. 

by 우리집아찌 [2018.12.13 18:15:37]

그냥 순서대로 ROWNUM 이나 ROW_NUMBER() OVER()로 정렬순서로 만들어서 FULL OUTER JOIN해보세요.


by 우리집아찌 [2018.12.13 18:18:20]

FULL OUTER JOIN 이 지원안되면 UNION ALL 후 ROWNUM 또는 ROW_NUMBER() OVER()

기준으로 GROUPING 하셔서 MAX(CASE ... ) 처리 하셔야합니다.

PIVOT도 될것같은데.. 패쓰

 


by 열심열심 [2018.12.14 09:17:13]

rownumber으로 한번 해볼게요 감사합니다. 


by 마농 [2018.12.13 18:24:05]

정보가 부족합니다.
결과만 보면 조인키가 있는건지 없는건지? 모르겟네요?
col2 와 col4 가 같은데? 이게 조인키인지? 아닌지? 알 수 가 없고
건수도 동일한데 항상 건수가 동일한지?
조인키 라던가? 정렬키 같은 연결고리가 있어야 합니다.


by 열심열심 [2018.12.14 09:17:56]

정렬키는 무어인가요? col2col4 값 대게 다릅니다. 

감사합니다. 


by 마농 [2018.12.14 09:27:40]

정렬 기준이요.

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