A BIT MODIFICATION

select a,max(b),c
from ( select * from a
union
select * from b)
group by a,c
order by a

aonther query:

SELECT DECODE(A.COL1, '', B.COL1, A.COL1) "C",
DECODE(A.COL2, '', 0, A.COL2)+DECODE(B.COL2, '', 0, B.COL2) "I",
DECODE(A.COL3, '', B.COL3, A.COL3) "OK"
FROM A FULL OUTER JOIN B ON (A.COL1=B.COL1)
ORDER BY C