Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/12/2007, 14:12
Siddhartha
 
Fecha de Ingreso: febrero-2003
Mensajes: 167
Antigüedad: 21 años, 3 meses
Puntos: 1
Exclamación No entiendo esta consulta SQL

Soy nuevo en esto y no comprendo la solucion del ejercicio siguiente:

Obtener una lista con el nombre y precio de los articulos mas caros de cada fabricante.


Tengo 2 tablas: Articulos y fabricantes
En fabricantes tengo 2 campos: Codigo y Nombre
En Articulos: codigo, nombre precio, fabricantes

SELECT A.Nombre, A.Precio, F.Nombre
FROM Articulos A, Fabricantes F
WHERE A.Fabricante=F.Codigo
AND A.Precio=
(
SELECT MAX(A.Precio)
FROM ARTICULOS A
WHERE A.Fabricante=F.Codigo
)

No entiendo bien la logica del Select dentro de la condicion. Supuestamnte el SELECT MAX... me devuelve un solo valor? El precio maximo?
No entiendo por qué esta consulta tendria que devolver tantos registros como fabricantes tengo. Alguien me podria explicar esta consulta?
Gracias!!