Je to proto, že MySQL poněkud bizarně GROUP věci smyslným způsobem.
Výběr MAX(column) získáte maximální hodnotu pro daný sloupec, ale vyberete jiné sloupce (nebo column sám o sobě) nemusí vyberte celý řádek s nalezeným MAX() value is in. V podstatě dostanete zpět libovolný (a obvykle zbytečný) řádek.
Zde je vlákno s některými řešeními pomocí dílčích dotazů:Jak mohu VYBRAT řádky s MAX (hodnota sloupce), DISTINCT o jiný sloupec v SQL?