42 lines
976 B
Plaintext
42 lines
976 B
Plaintext
Developers should use the ``++FROM ... OUTER JOIN++`` syntax rather than the Oracle join operator (``+``). The reason is that outer join queries that use ``+`` are subject to several restrictions which do not apply to the ``++FROM ... OUTER JOIN++`` syntax. For instance, a ``++WHERE++`` condition containing the ``+`` operator cannot be combined with another condition using the ``++OR++`` logical operator.
|
|
|
|
|
|
== Noncompliant Code Example
|
|
|
|
[source,sql]
|
|
----
|
|
BEGIN
|
|
-- Noncompliant
|
|
SELECT *
|
|
INTO employeesArray
|
|
FROM employee, department
|
|
WHERE employee.DepartmentID = department.ID(+);
|
|
END;
|
|
/
|
|
----
|
|
|
|
|
|
== Compliant Solution
|
|
|
|
[source,sql]
|
|
----
|
|
BEGIN
|
|
-- Compliant
|
|
SELECT *
|
|
INTO employeesArray
|
|
FROM employee LEFT OUTER JOIN department
|
|
ON employee.DepartmentID = department.ID;
|
|
END;
|
|
/
|
|
----
|
|
|
|
ifdef::env-github,rspecator-view[]
|
|
|
|
'''
|
|
== Implementation Specification
|
|
(visible only on this page)
|
|
|
|
include::message.adoc[]
|
|
|
|
endif::env-github,rspecator-view[]
|