Syntax error or access violation: 1055 Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column в Laravel

baltun

Администратор
Сообщения
10.894
Реакции
2.594
Баллы
2.003
Решение оказалось такое заходим config\database.php --> "mysql"
Находим:
Код:
'mysql' => [
       ...
       ....
       'strict' => true,
       'modes' => [
            //'ONLY_FULL_GROUP_BY', // Disable this to allow grouping by one column
            'STRICT_TRANS_TABLES',
            'NO_ZERO_IN_DATE',
            'NO_ZERO_DATE',
            'ERROR_FOR_DIVISION_BY_ZERO',
            'NO_AUTO_CREATE_USER',
            'NO_ENGINE_SUBSTITUTION'
        ],
 ]
Заменяем на это:
Код:
'strict' => false,
В моем случае была 500 ошибка после этих изменений скрипт стал нормально работать. При этом если в файле .env установить APP_DEBUG=true тогда вместо 500 ошибки на странице отобразится полный текст ошибки со ссылкой на файл.
Другое решение может заключатся добавлением в файл /etc/mysql/conf.d/mysql.cnf секции:
Код:
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
И перезапуск mysql:
Код:
sudo service mysql restart
 
Последнее редактирование:
Назад
Верх Низ