[Php-avanzado] Ejercicios SQL resueltos 1,2 y 3

Marcos Pucineri marcospucineri en gmail.com
Jue Jun 27 21:51:04 ART 2013


Dadas las siguientes tablas:
Tabla Productos (id, codigo, descripcion, precio)
Tabla Stock (id, id_prod, cantidad, id_almacen)
Tabla Almacen (id, nombre, direccion)


1)

a)productos y su cantidad (cod, des, pre, cant, alm)

SELECT p.id_prod, p.descripcion, p.precio, sum( s.cantidad ) AS cantidad,
a.nombre
FROM stock s
JOIN productos p ON s.id_prod = p.id_prod
JOIN almacenes a ON s.id_alma = a.id_alma
GROUP BY p.id_prod, a.id_alma
ORDER BY sum( s.cantidad ) DESC

2)

b)productos con stock > 20

SELECT p.id_prod, p.descripcion, sum( s.cantidad ) AS cantidad
FROM stock s
JOIN productos p ON s.id_prod = p.id_prod
GROUP BY (p.id_prod)
HAVING sum(s.cantidad) > 20

3)

c)cantidad de productos por almacen (total)

SELECT a.nombre, count(s.id_prod) as total
FROM almacenes a
JOIN stock s on a.id_alma = s.id_alma
GROUP BY a.id_alma

d) precio promedio de los productos (total)
e) total de productos en cada almacen (alm, cant, prod)
f) precios promedios de productos por almacen (alm, promedio)

2) Dadas las siguientes tablas:
Tabla Agenda (id, ape, nom, dir1, tel1, id_ciu1, dir2, tel2, idciu2)
Tabla Ciudades (id, nom)

Proyectar: ape, nom, dir1, tel1, nom_ciu1, dir2, tel2, nom_ciu2
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://www3.fi.mdp.edu.ar/pipermail/php-avanzado/attachments/20130627/93b56b9b/attachment.html>


Más información sobre la lista de distribución Php-avanzado