sql >> Database teknologi >  >> RDS >> Mysql

Sådan løses ORDER BY-klausulen er ikke på SELECT-listen forårsaget af MySQL 5.7 med SELECT DISTINCT og ORDER BY

Hvis du har kontrol over serveren, og du kører ældre kode, som du ikke nemt kan ændre, kan du juster serverens SQL-tilstand og fjern "only_full_group_by" enten i løbet af opstarten ved at køre forespørgslen

SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

eller ved at tilføje sql_mode='' til din my.cnf-fil.

Det er klart, at det er bedre at ændre din kode, hvis du har mulighed for det, men hvis ikke, vil dette deaktivere denne advarsel.



  1. Har mysql det, der svarer til Oracles analytiske funktioner?

  2. Sammenføjning af forskellige datakilder i lagdeling

  3. En introduktion til Java Security API

  4. Forskel mellem tabelfunktion og rørledningsfunktion?