【问题标题】:How can I write this query in Codeigniter Model?如何在 Codeigniter 模型中编写此查询?
【发布时间】:2021-02-06 04:46:42
【问题描述】:
SELECT user_name, user_dept, user_level
FROM tbl_users
WHERE (user_dept = 'Admin' AND user_level = '2') OR (user_level = '3');

我需要在 CI 模型函数中编写这个。我尝试的是

function getForwardvalues($uname)
{
    $query = $this->db->select('user_name')->from('tbl_users')->where('user_dept'= $uname && 'user_level'='2')->or_where('user_level'='3')->get();
    return $query->result();
}

我也试过了,但我没有得到我想要的

function getForwardvalues($uname)
{
    $query = $this->db->select('user_name')
        ->from('tbl_users')
        ->group_start()
        ->where('user_dept =', $uname)
        ->where('user_level=', '2')
        ->group_end()
        ->or_where('user_level=','3')
        ->get();
    
    return $query->result();
}

【问题讨论】:

    标签: mysql codeigniter model


    【解决方案1】:

    试试这个

    function getForwardvalues($uname)
    {
    
        $this->db->select('user_name, user_dept, user_level');
        $this->db->from('tbl_users');
        $this->db->where('(user_dept = "'.$uname.'" AND user_level = 2)')->or_where('user_level', 3);
        $query = $this->db->get();
    
        return $query->result();
    }
    

    【讨论】:

    • 如果我想在 where 子句中将 $uname 传递给那个“管理员”怎么办?
    • @AB D 你到底想要什么??
    • KUMAR 我需要将参数@uname 传递给“Admin”如何?
    • 好的。在我的编辑中用 $uname 更改单词 admin
    【解决方案2】:
    function getForwardvalues($uname)
    {
    
    $user_dept="Admin";
    $user_level="3"; 
    
    $query = $this->db->select("user_name, user_dept, user_level")
            ->from("tbl_users")
            ->where("user_dept",$user_dept)
            ->where("user_level",$user_level)
            ->or_where("user_level ",'3')
            ->get();
    
     return $query->result();
     
     }
    

    【讨论】:

    • 不,这不会检索第一个 AND where 子句.. 只会检索 or_where 之后的条件
    猜你喜欢
    • 2014-04-24
    • 1970-01-01
    • 2017-11-18
    • 1970-01-01
    • 1970-01-01
    • 2021-08-18
    • 2016-01-08
    • 1970-01-01
    • 2021-10-15
    相关资源
    最近更新 更多