I can write a query to solve my requirement in any of the followings :-
1.
select *
from a
where NOT EXISTS
(
select 1
from b
where a.id = b.id)
union all
select *
from b
2.
select
(
case when b.id is not null then
b.id
else
a.id
) as id
from a
left join b
on a.id = b.id
Any one please tell me which one is better?