SELECT B.*
FROM BigTable AS B -- Why do SQL questions omit the table names so often?
JOIN (SELECT EAN, MIN(Price) AS Price
FROM BigTable
GROUP BY EAN
) AS P
ON B.EAN = P.EAN AND B.Price = P.Price
ORDER BY B.EAN;
La sous-requête trouve le prix minimum pour chaque EAN ; la requête externe trouve les détails qui correspondent à l'EAN et au prix minimum pour cet EAN. S'il y a deux enregistrements avec le même prix minimum pour un EAN donné, les deux seront choisis.