我有一个查询,可以获取主事人员的凭证,尽管如果用户有任何凭证,它可以返回许多行。我试图得到一个查询,如果其中一行 renew 列设置为 1 然后忽略它,否则,如果它仍然存在,则返回结果 0 ```$officiants = Officiant::where('status', 1)->whereHas('cred',function($q) {$q->where('renewal', 0);})->get();
renew
1
0
cl25kdpy1#
$officiants = Officiant::where('status', 1) ->whereHas('cred',function($q) { $q->where('renewal', 0); })->with([‘cred’=> function($query) { $query->where('renewal', 0); }) ->get();
如果你想得到有信誉的官员,那么你需要这个查询。
0md85ypi2#
你必须使用 orWhere() 它也将获取更新为1的行
orWhere()
$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();
2条答案
按热度按时间cl25kdpy1#
如果你想得到有信誉的官员,那么你需要这个查询。
0md85ypi2#
你必须使用
orWhere()
它也将获取更新为1的行