Supongo que estás hablando de algo como
SELECT *
FROM mytable
GROUP BY
column
No debe usar expresiones no agregadas en GROUP BY
a menos que sean todos iguales dentro del grupo.
Si desea devolver el registro que contiene el menor valor de una expresión dentro de un grupo, use esto:
SELECT mo.*
FROM (
SELECT DISTINCT column
FROM mytable
) md
JOIN mytable mo
ON mo.id =
(
SELECT id
FROM mytable mi
WHERE mi.column = md.column
ORDER BY
mi.column, mi.someorder
LIMIT 1
)