What does the (+) operator mean in a where-clause of PL/SQL?

You are correct, the + is a right join


I think this is a LEFT OUTER JOIN (although the currently approved answer says it's a RIGHT OUTER JOIN). From Oracle documentation:

Using Outer Joins: Examples

SELECT d.department_id, e.last_name
   FROM departments d LEFT OUTER JOIN employees e
   ON d.department_id = e.department_id
   ORDER BY d.department_id;


Users familiar with the traditional Oracle Database outer
joins syntax will recognize the same query in this form:

SELECT d.department_id, e.last_name
   FROM departments d, employees e
   WHERE d.department_id = e.department_id (+)
   ORDER BY d.department_id;

For the RIGHT OUTER JOIN you put the (+) sign before the = sign, eg.

SELECT d.department_id, e.last_name
   FROM departments d, employees e
   WHERE d.department_id (+) = e.department_id
   ORDER BY d.department_id;

Yes, it means right join. if the statement was like .... where Tabel1.Attr (+) = Tabel2.Attr, it have to be left join.

Tags:

Sql

Oracle11G