#mysql #codeigniter #model
#mysql #codeigniter #Модель
Вопрос:
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 amp;amp; '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();
}
Ответ №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();
}
Комментарии:
1. Что, если я хочу передать $uname этому «администратору» в предложении where?
2. @AB D чего вы на самом деле хотите??
3. КУМАР, мне нужно передать аргумент @uname «Администратору» Как?
4. ОК. я изменю слово admin на $uname в моей правке
Ответ №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();
}
Комментарии:
1. Нет, это не извлекает предложения first И where.. извлекает условие только после or_where