2014-12-29 6 views
3

아래의 표 A와 표 B를 보면 필요한 결과를 산출하는 데 사용해야하는 SQL/PLPGSQL에 대한 안내를받을 수 있습니까? 많은 감사합니다.Postgresql Postgresql 행 병합

표 A

+--------+-------+-------+ 
| USR_ID | COL1 | COL2 | 
+--------+-------+-------+ 
| 1 |  | 101 | 
+--------+-------+-------+ 
| 2 |  | 101 | 
+--------+-------+-------+ 

표 B

+--------+-------+-------+ 
| USR_ID | COL1 | COL2 | 
+--------+-------+-------+ 
| 1 | 103 |  | 
+--------+-------+-------+ 
| 3 | 102 |  | 
+--------+-------+-------+ 

필수 RESULT

+--------+-------+-------+ 
| USR_ID | COL1 | COL2 | 
+--------+-------+-------+ 
| 1 | 103 | 101 | 
+--------+-------+-------+ 
| 2 |  | 101 | 
+--------+-------+-------+ 
| 3 | 102 |  | 
+--------+-------+-------+ 

답변

1

사용 coalesce톤 o null이 아닌 값 우선 순위 지정

select coalesce(a.usr_id,b.usr_id) usr_id, 
coalesce(a.col1,b.col1) col1, 
coalesce(a.col2,b.col2) col2 
from tablea a full join tableb b 
on a.usr_id = b.usr_id 
+0

완벽합니다. 즉각적인 피드백을 감사하십시오. – Adev