Помимо синтаксических ошибок, вы сравниваете синтаксис ANSI-89 JOIN (критерии JOIN в предложении WHERE) с синтаксисом ANSI-92 JOIN (используется ключевое слово JOIN).
Они работают идентично друг другу, но в ANSI-89 отсутствует поддержка OUTER JOIN, поэтому во многих базах данных есть пользовательские средства указания соединений OUTER:
database ANSI-89 OUTER JOIN syntax
------------------------------------
Oracle t1.column = t2.column(+)
SQL Server t1.column =* t2.column
Для переносимости и читабельности - используйтеСинтаксис ANSI-92.