sql >> Databáze >  >> RDS >> Mysql

MySQL:Co se stane s neagregovanými poli při GROUP BY?

MySQL> 5.7.5

Je to nezákonný dotaz.

Zobrazí se chyba jako:

ERROR 1055 (42000): Expression #1 of SELECT list is not in 
GROUP BY clause and contains nonaggregated column 'a' 
which is not functionally dependent on columns in 
GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

Další podrobnosti na https://dev.mysql. com/doc/refman/5.7/en/group-by-handling.html

MySQL <5.7.5

Krátká odpověď:je to platný dotaz, ale server může vrátit jakoukoli hodnotu

Čtení tohoto https://dev.mysql.com /doc/refman/5.0/en/group-by-handling.html ukazuje:

Neexistuje tedy způsob, jak určit, jaká tato hodnota bude (pokud je pro danou skupinu více hodnot)



  1. návratová hodnota nodeJS ze zpětného volání

  2. Přidání názvu schématu k entitě v datech Spring?

  3. Jak funguje ROW_NUMBER() na serveru SQL

  4. Příkaz CASE v klauzuli WHERE v SQL Server 2008