Это ограничение имеет смысл, так как при использовании GROUP BYв MySQL оно возвращает одну строку для каждого значения в столбцах, используемых в GROUP BY. Значит, значения других столбцов в выбранных строках нигде нет смысла использовать. Поэтому всегда рекомендуется использовать лучшие практики, и я бы рекомендовал не отключать MySQL Strict Mode.
Часто разработчикам могут потребоваться строки запроса, сгруппированные по значению столбца. Здесь им не нужна только одна строка на уникальные значения столбцов. Но им нужно несколько строк, сгруппированных по уникальным значениям определенного столбца. По какой-то причине они используют groupByметод Query Builder Laravel, который генерирует MySQLGROUP BY запрос и разработчики сталкиваются с указанной выше ошибкой.
Решение их проблемы - использовать groupByвместо этого метод Collection. Например,
$loadingData = DB::table('loading')
->whereIn('id', $loadIds)
->get()
->groupBy('vehicle_no');
Это даст им желаемый результат.