我试图在我使用多个whereNotIn数组的地方进行查询。出于某种原因,它们会相互阻塞并忽略其他查询参数。
关于如何解决这个问题的任何线索?
$products = Products::orderBy('id','DESC')
->where('status', '=', 4)
->whereNotIn('category', $excluded)
->whereNotIn('location', ['New York', 'Boston', 'Washington, DC', 'Charlotte'])
->take(400)
->get();
答案 0 :(得分:0)
您需要在orWhereNotIn
内对条件where
进行分组以排除这两种情况,请尝试此操作
$locations = ['New York', 'Boston', 'Washington, DC', 'Charlotte'];
$products = Products::orderBy('id','DESC')
->where('status', '=', 4)
->where(function($q) use ($locations,$excluded) {
$q->orWhereNotIn('category', $excluded);
$q->orWhereNotIn('location', $locations);
})
->take(400)
->get();
答案 1 :(得分:0)
$excluded
是一个数组吗?如果没有,你可以
->where('category', "<>", $excluded);