Reputation: 990
I constantly see "from" 2 tables and "join" 2 tables examples. That's why when I see following Oracle SQL statement, I feel strange:
select a.oid, m.acct, p.cdate
from a, p, m
where a.oid = p.oid(+) and a.uid = m.uid
Upvotes: 0
Views: 108
Reputation: 4818
This is equivalent to:
select a.oid, m.acct, p.cdate
from a left outer join p on (a.oid = p.oid)
inner join m on (a.uid = m.uid)
Query you posted is written in old syntax but does exactly the same as select above. Having simpler example:
select * from a, b where a.id = b.id;
is also equivalent to:
select * from a inner join b on (a.id = b.id);
Both queries should be processed same way by optimizer. Also join order is determined by optimizer. So getting back to original example optimizer will define if first apply inner join
and then left join
or opposite.
Upvotes: 2