I have two large select statements in a insert statement (Select 1 UNION ALL Select 2) and they have outer joins in their where clauses. (can't remove them). First I tried to write functions and remove outer joins but got poor performance, then use "USE_MERGE", "MERGE_JOIN" hints, but it didn't make any difference in performance. I'm stuck!! anybody can help me??

Insert into TEMP_TABLE
Select (40 columns) from TABLE a, table b, table c, table d
....

where b.field1 (+) = a.field1
And c.field2 (+) = a.field2.

Here table a is the largest table others have at most 20 rows.

Thanks in advance...