select --+use_hase(a,b) a.name,( case b.value1 when null then a.value1 else b.value1 ) as value1,
( case b.value2 when null then a.value2 else b.value2 ) as value2,a.state
from table1 a,table2 b
where a.state = 1
and a.name = b.name
into temp tmp_table1;