Outer join.
La sentencia full outer join de SQL (como lenguaje de consulta) extrae todos los registros de las tablas relacionadas, independientemente de si sus relaciones aparecen o no en la otra tabla.
Sintaxis:
SELECT ename, job, dname
FROM emp e, dept d
WHERE e.deptno = d.deptno(+)
UNION
SELECT ename, job, dname
FROM emp e, dept d
WHERE e.deptno(+) = d.deptno;




Subconsulta.

Una subconsulta es una instrucción SELECT anidada dentro de una instrucción SELECT, SELECT...INTO, INSERT...INTO, DELETE, o UPDATE o dentro de otra subconsulta. Puede utilizar tres formas de sintaxis para crear una subconsulta:
   comparación [ANY | ALL | SOME] (instrucción sql)    expresión [NOT] IN (instrucción sql)    [NOT] EXISTS (instrucción sql)
En donde:
comparación
Es una expresión y un operador de comparación que compara la expresión con el resultado de la subconsulta.
expresión
Es una expresión por la que se busca el conjunto resultante de la subconsulta.
instrucción SQL
Es una instrucción SELECT, que sigue el mismo formato y reglas que cualquier otra instrucción SELECT. Debe ir entre paréntesis.

Ejemplo:
Se puede utilizar el predicado ANY o SOME, los cuales son sinónimos, para recuperar registros de la consulta principal, que satisfagan la comparación con cualquier otro registro recuperado en la subconsulta. El ejemplo siguiente devuelve todos los productos cuyo precio unitario es mayor que el de cualquier producto vendido con un descuento igual o mayor al 25 por ciento:
SELECT *
FROM
   Productos
WHERE
   PrecioUnidad
   ANY
   (
   SELECT
   PrecioUnidad
   FROM
   DetallePedido
   WHERE
   Descuento = 0 .25
)