У меня есть запрос, который получает учетные данные официальных лиц, хотя он может вернуть много строк, если они есть у пользователя.
Я пытаюсь получить запрос, где ЕСЛИ для одной из строк столбца renew
установлено значение 1
, игнорируйте его, иначе верните результаты, если он все еще 0
$officiants = Officiant::where('status', 1)
->whereHas('cred',function($q) {
$q->where('renewal', 0);
})
->get();
$officiants = Officiant::where('status', 1)
->whereHas('cred',function($q) {
$q->where('renewal', 0);
})->with([‘cred’=> function($query) {
$query->where('renewal', 0);
})
->get();
Если вы хотите получить должное внимание, вам понадобится этот запрос.
Officiant Cred имеет строки, если какая-либо из строк возвращает обновление 1, игнорируйте, иначе верните результаты
Да, вам нужны все кредиты со значением обновления 0, верно?
Да, хотя, если в каких-либо строках стоит 1, НЕ возвращать
Вы выполнили вышеуказанный запрос?
очевидно у меня есть
Вы должны использовать orWhere()
, он также будет извлекать строки с обновлением = 1
$officiants = Officiant::where('status', 1)
->whereHas('cred',function($q) {
$q->where('renewal', 0);
$q->orWhere('renewal',1);
})
->with(['cred' => function($q) {
$q->where('renewal', 1);
$q->where('renewal', 0);
}])
->get();
Можете ли вы показать свою модель Officiant и cred?