Está en la página 1de 7

Universidad Nacional Autónoma de México

Facultad de Estudios Superiores Aragón


Alumno: Eduardo Aldair Mercado Rodríguez.
Número de práctica: 4
Nombre del trabajo: Hoja 5.
Materia: Bases de datos 1.
Grupo 1407.
Fecha de entrega 17/11/2021
Práctica 4. Oficinas Hoja 5.

1. Listar las oficinas del este indicando para cada una de ellas su 1) número, 2) ciudad, 3)
números y 4-5nombres de sus empleados. Y luego Hacer una versión en la que aparecen
los empleados de cada una de las regiones.

SELECT oficina.oficina, oficina.region, oficina.ciudad, empleado.numemp,


empleado.nombre, empleado.apellido FROM empleado, oficina WHERE empleado.oficina =
oficina.oficina AND oficina.region like "este";

SELECT oficina.oficina, oficina.region, oficina.ciudad, empleado.numemp,


empleado.nombre, empleado.apellido FROM empleado, oficina WHERE empleado.oficina =
oficina.oficina ORDER BY oficina.region;
2. Listar los pedidos mostrando su 1) número, 2) importe, 3-4) nombre del cliente, y el 5)
límite de crédito del cliente correspondiente (todos los pedidos tienen cliente y
representante ordénalos por nombre).

SELECT pedido.numpedido, pedido.importe, cliente.nombre, cliente.cl_ap_p,


cliente.cl_ap_m, cliente.limitecredito FROM pedido, cliente WHERE cliente.numclie =
pedido.clie order by cliente.cl_ap_p, cliente.cl_ap_m, cliente.nombre;
3. Listar 1) Num_empleado, su 2-3) nombre completo, 4) la ciudad, 5) región y 6) número
de oficina en donde trabaja.

SELECT empleado.numemp, empleado.apellido, empleado.nombre, oficina.ciudad,


oficina.region,oficina.oficina FROM oficina, empleado WHERE oficina.oficina =
empleado.oficina;

4. Listar las oficinas con objetivo superior a 600.000 pts indicando para cada una de ellas
1) numero de oficina, 2) objetivo, 3) venta 4-5) el nombre de su director con su 6)
numero.

SELECT oficina.oficina, oficina.objetivo, oficina.venta, empleado.nombre,


empleado.apellido, empleado.numemp FROM oficina LEFT JOIN empleado ON oficina.dir =
empleado.numemp WHERE objetivo >600000;
5. Listar los pedidos superiores a 25.000 pts, incluyendo el nombre del empleado que
tomó el pedido y el nombre del cliente que lo solicitó.

SELECT pedido.importe, empleado.nombre AS empl_nombre, empleado.apellido AS


emp_apellido, cliente.nombre AS clie_nombre, cliente.cl_ap_p AS clie_ap FROM empleado,
pedido, cliente WHERE empleado.numemp = pedido.rep AND pedido.clie = cliente.numclie
AND pedido.importe > 25000;

6. Hallar los empleados que realizaron su primer pedido el mismo día en que fueron
contratados.

SELECT empleado.numemp, empleado.nombre, empleado.contrato, pedido.fechapedido


FROM empleado, pedido WHERE empleado.numemp = pedido.rep AND
pedido.fechapedido = empleado.contrato;

7. Listar los empleados con una cuota superior a la de su jefe; para cada empleado sacar
sus datos y el número, nombre y cuota de su jefe.

SELECT e1.numemp, e1.nombre, e1.apellido, e2.numemp AS num_jefe, e2.nombre AS


nombre_jefe, e2.apellido AS apellido_jefe, e2.cuota AS cuota_jefe FROM empleado e1
LEFT JOIN empleado e2 ON e1.jefe = e2.numemp WHERE e1.cuota > e2.cuota;
8. Determina lo que se obtiene por la venta total de cada producto vendido del almacén.

SELECT idfab, idproducto, precio, existencia, (precio*existencia) AS venta_total FROM


producto;
9. Determina cuanto se obtendrá por fabricante si todo el almacén queda vacío.

SELECT idfab, SUM(precio*existencia) total_venta FROM producto GROUP BY idfab ORDER


BY total_venta;

10.- Determina la venta total quedando el almacén vacío.

SELECT SUM(precio), SUM(Existencia), SUM(precio*existencia) AS venta_total FROM


producto;

También podría gustarte