Laravel 5.3 e 5.4 usam o modo estrito para mysql por padrão. Isso significa que
ONLY_FULL_GROUP_BY
O modo SQL também está habilitado. Mas se sua versão do MySQL for pelo menos 5.7.5 você pode agrupar por uma chave primária de uma tabela e usar todas as colunas dessa tabela na cláusula SELECT porque elas são funcionalmente dependentes do PK. (Manipulação MySQL de GROUP BY )
Suas opções são:
Atualize o MySQL para pelo menos 5.7.5
Ou desative o modo estrito em laravels db config (
config/database.php
) // ..
'connections' => [
// ..
'mysql' => [
// ..
'strict' => false,
// ..
],
// ..
]
Atualizar
Más notícias para o usuário MariaDB (e xampp):MariaDB parece não suportar a "detecção de dependência funcional" (ainda). Tudo o que encontrei foi este bilhete .