Я попыталсяCodeIgniter заказ на не работает с нулевыми значениями
$this->db->order_by('order_status','asc')
->order_by('order_id','asc')
->get_where('order', array(
'customer_id' => $this->session->userdata('user_id')
)
)
->result_array();
Я также попытался
->order_by('order_status asc,order_id asc')->get_where...
но если order_status имеет значение 0, это всегда является последним. (т. е. заказы выходят со статусом 1,2,0). Поле order_status - TinyInt. Что мне не хватает? Edit: результаты Таблица выглядеть следующим образом:
| ID | Status |
25 1
26 1
13 2
16 2
5 0
27 0
Что мне нужно:
| ID | Status |
5 0
27 0
25 1
26 1
13 2
16 2
это поможет, если вы включили результаты своего стола, чтобы мы могли визуализировать лучше. – CodeGodie
Я просто подумал, что покажу что-нибудь интересное, и поэтому я не предлагаю вариант редактирования, который я вижу. Когда я запускаю запрос (полученный из профиля) в phpmyadmin, он работает.SELECT * FROM ('order') WHERE' customer_id' = '7' ORDER BY 'order_status' asc,' order_id' desc – user3080408
Я просто проверил ваш код выше в моем локальном тестирующем приложении, на котором запущен CI3, с той же информацией, которую вы разместили в своей базе данных, и хорошо работает с нулями сверху. Я не понимаю, почему вы испытываете эту ошибку. Theres должно быть что-то еще, что вы делаете, или параметр где-то, что вы не включаете. – CodeGodie