加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

php – laravel mysql查询多个where orwhere和inner join

发布时间:2020-12-14 19:46:12 所属栏目:大数据 来源:网络整理
导读:如何在Laravel中准备以下 MySQL查询? 这是我使用的代码没有成功: $user_list = DB::table('users')-where('users.user_id','=',$clientId)-where('users.firstname','LIKE','%'.$_POST['name'].'%')-orWhere('users.lastname','%'.$_POST['name'].'%')-orW
如何在Laravel中准备以下 MySQL查询?

这是我使用的代码没有成功:

$user_list = DB::table('users')
->where('users.user_id','=',$clientId)
->where('users.firstname','LIKE','%'.$_POST['name'].'%')
->orWhere('users.lastname','%'.$_POST['name'].'%')
->orWhere('users.email','%'.$_POST['name'].'%')
->join('users_roles','users.id','users_roles.user_id')                        
->where('users_roles.role_id',Role::USER_PARTICIPANT)
->get();

条件必须是:

> users.user_id == $clientId
> users.firstname ==’%’.$_ POST [‘name’].’%’OR users.lastname ==’%’.$_ POST [‘name’].’%’OR users.email ==’% ”.$_ POST [ ‘名’. ‘%’
>当users_roles.role_id == Role :: USER_PARTICIPANT时,users_roles和用户跨越的用户之间的内部联接.id == users_roles.user_id

好吧看起来你的问题是嵌套在哪里

试试这个:

$name = $_POST['name']; // I'd recommend you use Input::get('name') instead...

$user_list = DB::table('users')
    ->where('users.user_id',$clientId)
    ->where(function($query) use ($name){
        $query->where('users.firstname','%'.$name.'%');
        $query->orWhere('users.lastname','%'.$name.'%');
        $query->orWhere('users.email','%'.$name.'%');
    })
    ->join('users_roles','users_roles.user_id')
    ->where('users_roles.role_id',Role::USER_PARTICIPANT)
    ->get();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读