В общем у меня есть вот такой запрос
$countries = \DB::table('event_follows')
->join('country', 'event_follows.country_id', 'country.id')
->select('country.name', \DB::raw('COUNT(event_follows.city_id) as countCities'))
->where('event_follows.user_id', $user->id)
->groupBy('event_follows.country_id')
->get();
И он не работает, выдает ошибку
SQLSTATE[42000]: Syntax error or access violation: 1055 'links.country.name' isn't in GROUP BY
Немного погуглив, нашел вот такое решение. В файл конфигурации database.php в массив mysql я добавил вот такую штуку
'modes' => [
'STRICT_TRANS_TABLES',
'NO_ZERO_IN_DATE',
'NO_ZERO_DATE',
'ERROR_FOR_DIVISION_BY_ZERO',
'NO_AUTO_CREATE_USER',
'NO_ENGINE_SUBSTITUTION'
],
И короче все заработало. Вопрос такой, почему sql запрос не работал, пока не внес изменения в конфиг? Впервые с таким сталкиваюсь. Там где взял код, толкового объяснения нет.