Všechny sloupce v klauzuli SELECT, které nemají agregaci, musí být v GROUP BY
Dobře:
SELECT col1, col2, col3, MAX(col4)
...
GROUP BY col1, col2, col3
Také dobré:
SELECT col1, col2, col3, MAX(col4)
...
GROUP BY col1, col2, col3, col5, col6
Žádné další sloupce =není potřeba GROUP BY
SELECT MAX(col4)
...
Nefunguje:
SELECT col1, col2, col3, MAX(col4)
...
GROUP BY col1, col2
Zbytečné:
SELECT col1, col2, col3, MAX(col4)
...
GROUP BY col1, col2, col3, MAX(col4)
Mít agregaci (MAX atd.) s jinými sloupci bez GROUP BY nedává smysl, protože dotaz se stává nejednoznačným.