Beide Syntaxen funktionieren normalerweise ohne Probleme, aber wenn Sie versuchen, eine Where-Bedingung hinzuzufügen, werden Sie sehen, dass es mit der zweiten viel einfacher ist zu verstehen, welche die Join-Bedingung und welche die Where-Klausel ist.
1)
SELECT a.name,
a.empno,
b.loc
FROM tab a,
tab b
WHERE a.deptno = b.deptno(+)
AND a.empno = 190;
2)
SELECT a.name,
a.empno,
b.loc
FROM tab a,
LEFT OUTER JOIN tab b
ON a.deptno = b.deptno
WHERE a.empno = 190;
Außerdem ist es viel einfacher, einen äußeren Join zu erkennen, und vergessen Sie nicht, das (+) einzuschließen. Insgesamt kann man sagen, dass es nur eine Frage des Geschmacks ist, aber die Wahrheit ist, dass die zweite Syntax viel besser lesbar und weniger fehleranfällig ist.