Je suppose que vous parlez de quelque chose comme
SELECT *
FROM mytable
GROUP BY
column
Vous ne devez pas utiliser d'expressions non agrégées dans GROUP BY
à moins qu'ils ne soient tous identiques au sein du groupe.
Si vous souhaitez renvoyer l'enregistrement contenant la plus petite valeur d'une expression dans un groupe, utilisez ceci :
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
)