Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment résoudre la clause ORDER BY n'est pas dans la liste SELECT a causé MySQL 5.7 avec SELECT DISTINCT et ORDER BY

Si vous contrôlez le serveur et que vous exécutez du code hérité que vous ne pouvez pas modifier facilement, vous pouvez ajuster le mode SQL du serveur et supprimer "only_full_group_by" soit pendant la durée du boot, soit en exécutant la requête

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

ou en ajoutant sql_mode='' à votre fichier my.cnf.

Évidemment, il vaut mieux changer votre code si vous en avez la possibilité, mais sinon, cela désactivera cet avertissement.