Laravel: синтаксическая ошибка или нарушение прав доступа: ошибка 1055 при использовании WhereIn и GroupBy
Для получения данных конкретной строки Laravel позволяет нам используйте WhereIn и GroupBy в одном запросе. Однако иногда это может привести к «Синтаксической ошибке или нарушению прав доступа: ошибка 1055».
Причины ошибки
Эта ошибка возникает, когда:
Решения
Отключить строгий режим
Вы можете отключить MySQL строгий режим, установив 'strict' => false в массиве 'mysql' файла config/database.php. file.
'mysql' => [ ... 'strict' => false, ... ],
Добавить режимы в параметры MySQL
В качестве альтернативы вы можете оставить строгий режим включенным и добавить определенные режимы в опцию 'modes' массива 'mysql':
'mysql' => [ ... 'strict' => true, 'modes' => ['STRICT_TRANS_TABLES'], ... ],
Включите поле GroupBy в WhereIn
Убедитесь, что поле id, используемое в условии WhereIn, также включено в список полей GroupBy. Это предотвратит возникновение ошибки.
$loadids = explode("#@*", $reciptdet->loading_id); $loadingdatas = DB::table('loading') ->groupBy(['vehicle_no', 'id']) ->whereIn('id', $loadids) ->get();
Реализуя эти решения, вы можете устранить «Синтаксическую ошибку или нарушение прав доступа: ошибка 1055» при использовании WhereIn и GroupBy в одном запросе.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3