在我的控制器中,我在数据库查询中使用了Laravels WhereNull
,OrWhere
和WhereRaw
。它正在提取所有结果,但问题是看起来它正在拉动所有内容并忽略最后的Where子句。我在其他控制器上以不同的方法使用它,它工作正常。是否有特定的订单或我遗漏的东西?
不起作用(忽略WhereRaw并显示所有结果)
$lists = DB::table('statuses')
->whereNull('company_id')
->orWhere('company_id', '=', Auth::user()->company_id)
->whereRaw("FIND_IN_SET('Task',assigned_to)")
->get();
这适用于其他控制器,在没有whereRaw的情况下用作不同的方法:
return Status::whereNull('company_id')->orWhere('company_id', '=', Auth::user()->company_id)
->orderBy('created_at', 'asc')
->get();
答案 0 :(得分:1)
使用DB::raw
代替whereRaw
->where(DB::raw("FIND_IN_SET('Task',assigned_to)"))