Я поместил следующий блок кода для извлечения элементов из базы данных. Вот код:CodeIgniter Active Query ведет себя непредсказуемым образом
$db->where("type =", 1);
$db->where("status", 1);
$db->or_where("status", 2);
$db->order_by("id", "DESC");
$dbinfo = $db->get("ads")->result_array();
Теперь, основываясь на приведенном выше коде, ожидается, чтобы увидеть этот пункт, тип которого равен 1, и статус которого равен 1, или 2. Но выбирает элементы, типы также кроме 1. Это смутило меня с раннего утра. Я больше не знаю решения.
Я также распечатал сгенерированный SQL-запрос CodeIgniter, используя $db->last_query()
для просмотра и проверки.
SELECT * FROM (`ads`) WHERE `type` = '1' AND `status` = 1 OR `status` = 2 ORDER BY `id` DESC
Как это должно быть реализовано с использованием CodeIgniter? –
$ this-> db-> где ('(status = 1 OR status = 2)', null, false); –
спасибо, это прекрасно –