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 subconsulta encuentra el precio mínimo para cada EAN; la consulta externa encuentra los detalles que coinciden con el EAN y el precio mínimo para ese EAN. Si hay dos registros con el mismo precio mínimo para un EAN determinado, se elegirán ambos.