Oracle combinaciones externas son una forma de mostrar los datos sin mayor filtrado de registros. Si dos tablas contienen datos relacionados , hay una probabilidad de que uno de los cuadros pueden no tener ningún registro. Esto sólo puede suceder cuando no hay restricciones en las tablas que especifican que los registros deben estar presentes. Por ejemplo , si una compañía tiene un número de clientes , es posible que en cualquier momento un cliente no puede haber ordenado cualquiera de los productos . La situación inversa también puede ser cierto, en la que los productos pueden no tener los clientes que se les asignen . Instrucciones
1
Seleccione dos tablas de la base de datos Oracle para los cuales no puede haber registros existentes en una, pero no necesariamente en el otro. La tabla con los registros que faltan opcionalmente se conoce como la tabla externa en este caso.
2
Elija el orden de la consulta, en términos de decidir cuál de las tablas indicadas en la consulta (izquierda o derecha) será la combinación externa . Un ejemplo lo hace más claro de la siguiente manera :
seleccionar c.customerlastname ,
p.ProductID
de
cliente
c , productorders
p < p > donde c.customerid = p.customerid ;
de esta consulta una decisión tiene que ser hecho , es lo que requiere una lista de todos los pedidos de productos con ( o sin ) de los clientes o la situación inversa , es decir una lista de los clientes con o sin pedidos ?
Hoteles de 3
Coloque un indicador ( + ) para identificar la tabla de la que se devuelven filas opcionales es decir, con registros o no . En este ejemplo, la tabla de productos pueden o no tener órdenes en contra de ellos , por lo que esta será una combinación externa izquierda :
seleccionar c.customerlastname ,
p.ProductID
< p > de
cliente c , productorders p
donde c.customerid = p.customerid (+ ) ;
Si la consulta necesaria para encontrar los productos que no pueden tener los clientes contra ellos, la cláusula where serían:
donde c.customerid (+ ) = p.customerid ;
4
ejecutar la consulta y devolver el resultado . En el ejemplo de la izquierda combinación externa devolverá registros similares a los siguientes :
c.customerlastname 123423
Jones