17,382
社区成员




--full join+nvl 昨天刚有个人问过,
with tab as
(select 1 a_id, 'A' a_name, '2017-02-09' a_date, 9 a_nu
from dual
union all
select 1, 'A', '2017-02-08', 9
from dual
union all
select 1, 'A', '2017-02-01', 6 from dual),
tabb as
(select 1 b_id, 'A' b_name, '2017-02-09' b_date, 5 b_nu
from dual
union all
select 1, 'A', '2017-02-03', 4 from dual)
select nvl(tab.a_id, tabb.b_id) a_id,
nvl(tab.a_name, tabb.b_name) a_name,
nvl(tab.a_date, tabb.b_date) a_date,
tab.a_nu,
tabb.b_nu
from tab
full join tabb
on (tab.a_id = tabb.b_id and tab.a_name = tabb.b_name and
tab.a_date = tabb.b_date)