Как написать параметризованный запрос в CodeIgniter с использованием where и or_where

#mysql #codeigniter #codeigniter-3

Вопрос:

 $where = "`b`.`User_Type` = 6 AND `a`.`payment_status` = 2 OR (`a`.`payment_status` = 1 AND `a`.`approvedStatus` = 2)";

$this->db->where($where);
 

Я не могу написать выше условие где, подобное $this->db->>где(массив())…
ИЛИ используя любой другой шаблон, который мы используем в CodeIgniter. Кто — нибудь, пожалуйста, помогите написать правильный запрос.

Я не хочу использовать прямой SQL — запрос, как в первой строке.

Простите, если вопрос отнимет у вас время.

Ответ №1:

В codeigniter есть 2 разных способа с построителем запросов и прямым запросом строк

Ниже приведен способ работы с построителем запросов

 $this->db->where("b.User_Type = 6 AND a.payment_status = 3 OR (a.payment_status = 1 AND a.approvedStatus = 2)");
 

также вы можете сделать запрос строки

 $this->db->query('SELECt * from TABLE WHERE ? AND ? OR ?')
 

Комментарии:

1. Я думаю, что оба метода примерно одинаковы. Оба имеют необработанные SQL-запросы. Я пытаюсь найти какой-либо метод, при котором мне не нужно писать необработанный SQL-запрос…