Laravel 5.3查询不返回结果
问题描述:
在laravel 5.3我是一个写一个查询,但查询不返回任何数据Laravel 5.3查询不返回结果
当我直接在mysql中运行查询然后它的工作
查询这里
return DB::table('friends')
->join('users', function ($join) use ($user_id){
$join->on(function ($joinin) use ($user_id){
$joinin->where('friends.user_one_id', '=', 'users.id')
->where('friends.user_one_id', '!=',$user_id);
})->orwhere(function ($andwhere) use ($user_id){
$andwhere->where('friends.user_two_id', '=' ,'users.id')
->where('friends.user_two_id', '!=' ,$user_id);
});
})->where('status','=','1')
->where(function ($query) use ($user_id){
$query->where('user_one_id', '=', $user_id)
->orwhere('user_two_id', '=', $user_id);
})->get();
,并有可能使使用ORM口才
答
代替get()
此查询,尝试追加toSql()
代替,检查resul吨。这将向您显示查询构建器已构建的查询,以便您可以将其与您写入的原始查询进行比较,并查看是否可以缩小出错位置的范围。
此外,该查询将在Eloquent中正常工作,只需使用Friend::join...
而不是DB::table('friends')
。
查询生成器是否足够聪明以将!=改为 – bumperbox
是的。雄辩足够聪明:) –