An outer join between two tables returns more information than a corresponding inner join. An outer join returns a result table that contains all the rows from one of the tables even if there is no row in the other table that satisfies the join condition.
OpenEdge SQL supports outer join operations from either the FROM clause or the WHERE clause. Note the following:
In the FROM clause, specify the LEFT OUTER JOIN clause between two table names, followed by a search condition. The search condition can contain only the join condition between the specified tables. This is the preferred method, as it is in keeping with the SQL standard. The syntax for a left outer join using the FROM clause is:
FROM table_ref LEFT OUTER JOIN table_ref ON search_condition
In the WHERE clause, specify the outer join operator (+) after the column name of the table for which rows will not be preserved in the result table. Both sides of an outer join search condition in a WHERE clause must be simple column references. This syntax allows both left and right outer joins:
WHERE [table_name.]column(+) = [table_name.]column| WHERE [table_name.]column = [table_name.]column(+)