我有以下查询,
SELECT * FROM `users` WHERE approved='1'
and users.id NOT IN (SELECT donations.user_id FROM donations where month='1'
and year='2016');
我已关注Laravel Query Builder WHERE NOT IN 并转换我的查询,
$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查询构建器格式? 感谢。
答案 0 :(得分:0)
您不应该将 $ month 和 $ year 变量放在引号中。
替换
->where('month','=','$month')->where('year','=','$year')
与
->where('month','=',$month)->where('year','=',$year)