Php Laravel查询生成器WHERE NOT IN with multiple WHERE子句
我有以下疑问,Php Laravel查询生成器WHERE NOT IN with multiple WHERE子句,php,laravel,laravel-5,eloquent,Php,Laravel,Laravel 5,Eloquent,我有以下疑问, SELECT * FROM `users` WHERE approved='1' and users.id NOT IN (SELECT donations.user_id FROM donations where month='1' and year='2016'); 我跟着 然后像这样转换我的查询 $users = DB::table('users')->where('approved','=',1)->whereNotIn('id', function($
SELECT * FROM `users` WHERE approved='1'
and users.id NOT IN (SELECT donations.user_id FROM donations where month='1'
and year='2016');
我跟着
然后像这样转换我的查询
$users = DB::table('users')->where('approved','=',1)->whereNotIn('id', function($q){
$q->select('user_id')->from('donations')->where('month','=','$month')->where('year','=','$year');
})->get();
但它不起作用,有人能帮我找出我犯的错误吗。
如何将其转换为Laravel查询生成器格式?
谢谢。你不应该把你的$month和$year变量放在引号里 替换
->where('month','=','$month')->where('year','=','$year')
与
您不应该将$month和$year变量放在引号中 替换
->where('month','=','$month')->where('year','=','$year')
与
是 啊成功了。谢谢我忘了它是一个变量。@SAMEERKHAN如果它有效,你应该接受答案。是的!成功了。谢谢我忘了它是一个变量。@SAMEERKHAN如果它有效,你应该接受答案。