Ver Mensaje Individual
  #11 (permalink)  
Antiguo 03/07/2013, 07:38
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Query para traer los productos mas caros

Cita:
Iniciado por t0n1 Ver Mensaje
Buenísimo, gracias!!!!


Lo que no entiendo es por que esta respuesta que es la que muestra el práctico que estoy realizando, me trae todas las piezas:

Código SQL:
Ver original
  1. SELECT p1.Nombre, pr1.Nombre, Precio
  2. FROM Piezas p1 INNER JOIN
  3. (Suministra s1 INNER JOIN Proveedores pr1
  4. ON s1.IdProveedor = pr1.Id)
  5. ON p1.Codigo = s1.CodigoPieza
  6. WHERE Precio IN
  7. (SELECT MAX(Precio) FROM Suministra s2
  8. GROUP BY s2.CodigoPieza
  9. HAVING s2.CodigoPieza = p1.Codigo)
sencillo porque al hacer el group by de tu query lo estas haciendo por codigo pieza en lugar de por codigo proveedor, ademas le faltaria que ademas del maximo del producto tambien regresara el id proveedor, porque si tienes 2 proveedores que su maximo es 250, como va a saber que proveedor es??
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me