Está en la página 1de 11

Multitablas

Asignatura: Diseño de Base de Datos


Semana 14
Docente: Mg. Christian Almóguer Martínez
Mail: almoguer@uigv.edu.pe
AGENDA

• JOIN SIMPLES
• EQUIJOIN.
• NO - EQUIJOIN.
• AUTO JOIN (SELF).
• OUTER JOIN
Multitablas
Denominadas combinaciones o composiciones, permiten
recuperar campos de dos ó más tablas según la relación lógicas
entre ellas.
ESPECIFICACIONES
• Los nombres de los campos deben ser desplegados en el
SELECT.
• Los nombres de las tablas a ser sujeto del JOIN se especifica
en la cláusula FROM.
• La condición de la multitabla se especifica en la cláusula
WHERE.
Join Simples (EquiJoin)
Un JOIN simple recupera registros de dos o más tablas
unidas en base a una condición de igualdad en la cláusula
WHERE.

SELECT [tabla.]columna , [tabla.]columna , .......


FROM tabla1, tabla2, ....
WHERE [tabla1.]columna = [tabla2.]columna ;
Join Simples (EquiJoin)
• Ejemplo: Mostrar el nombre, edad y ciudad de la
oficina donde trabajan los representantes de ventas.

SELECT nombre, edad, ciudad


FROM repventas, oficinas
WHERE repventas.oficina_rep= oficinas.oficina
Ejemplos Diversos
• Mostrar los nombres de los clientes, cantidad e importes de los
pedidos efectuados superiores a 10000.

SELECT empresa, cant, importe


FROM clientes, pedidos
WHERE num_clie= clie and
importe > 10000
Ejemplos Diversos
• Mostrar el numero del pedido, fecha y descripción de los
productos para todos los pedidos efectuados en febrero de
cualquier año.

SELECT num_pedido, fecha_pedido, descripcion


FROM pedidos, productos
WHERE fab=id_fab and producto=id_producto and
datepart(mm,fecha_pedido)=2
Ejemplos Diversos
• Mostrar el numero del pedido, nombre del cliente que lo solicito y
nombre del representante que lo atendió para todos los pedidos
efectuados en el segundo semestre de cualquier año.

Select num_pedido, empresa, nombre


From pedidos, clientes, repventas
Where clie=num_clie and
rep=num_empl and
datepart(mm,fecha_pedido)>6
Ejemplos Diversos
• Mostrar el numero del pedido, nombre del representante que lo
atendió y descripcion del producto para todos los pedidos cuyos
importes superen los 30000.

Select num_pedido, nombre, descripción


From pedidos, repventas, productos
Where rep=num_empl and
fab=id_fab and producto=id_producto and
importe >30000
Ejemplos Diversos
• Mostrar el numero del pedido, nombre del cliente que lo solicito,
nombre del representante que lo atendió y en que ciudad trabaja;
para todos los pedidos cuyas cantidades sean mayor a 10.

Select num_pedido, empresa, nombre, ciudad


From pedidos, clientes, repventas, oficinas
Where clie=num_clie and
rep=num_empl and
oficina_rep=oficina and
cant >10
Ejemplos Diversos
• Mostrar el numero del pedido, nombre del cliente que lo solicito, nombre del
producto solicitado, nombre del representante que lo atendió, ciudad donde
este trabaja; para todos los pedidos efectuados en el ultimo trimestre de
cualquier año.
Select num_pedido, empresa, descripcion, nombre, ciudad
From pedidos, clientes, productos, repventas, oficinas
Where clie=num_clie and fab=id_fab and producto=id_producto and
rep=num_empl and oficina_rep=oficina and
datepart(mm,fecha_pedido) >9

También podría gustarte