Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como resolver a cláusula ORDER BY não está na lista SELECT causou MySQL 5.7 com SELECT DISTINCT e ORDER BY


Se você tem o controle do servidor e está executando um código legado que não pode ser alterado facilmente, você pode ajustar o modo SQL do servidor e remova "only_full_group_by" durante a inicialização, executando a consulta

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

ou adicionando sql_mode='' para o seu arquivo my.cnf.

Obviamente, é melhor alterar seu código se você tiver a possibilidade, mas se não, isso desativará esse aviso.