【发布时间】:2019-04-17 10:44:05
【问题描述】:
我有两个 3 表:users,profiles,friend_request
$my_profile_id 变量存储用户个人资料 ID 的值
$my_user_id = Auth::user()->id;
$my_profile_id = DB::table('profiles')->select('profiles.profile_id', 'profiles.id')->leftjoin('users','users.id' ,'=' ,'profiles.id')->where('users.id',$my_user_id)->pluck('profiles.profile_id')->first();
$friend_accept = DB::table('friend_request')->select('profiles.profile_id','profiles.first_name','interest_request.sent_at','interest_request.interest_id')->leftjoin('profiles', function($join){
$join->on('interest_request.sender_id' , '=','profiles.profile_id');
$join->orOn('interest_request.to_user_id' , '=','profiles.profile_id');
})->where('to_user_id',$my_profile_id)->orwhere('sender_id',$my_profile_id)->where('interest_status','2')->whereNotIn('profiles.profile_id', function($q)
{
$q->select('profiles.profile_id')->from('profiles')->where('profiles.profile_id',$my_profile_id);
})->groupby('profiles.profile_id')->get();
$my_profile_id 变量在 where 和 orwhere 子句中工作正常,但是当我在 whereNotIn 子查询子句中使用时,它会产生错误:未定义变量
【问题讨论】:
标签: mysql laravel laravel-5 query-builder laravel-query-builder