Можно ли настроить запрос order_by в MySQL или в CI? Например, я хочу, чтобы мой столбец был упорядочен по («1», «11», «4», «2», «21», «3», «5», «7»). Поэтому, если я запрашиваю его как ASC результат будет отображаться в порядке моего индивидуального заказа.

Если это невозможно, как лучше обойти эти заказы? Надеемся на простое решение, просто используя запрос MySQL.

Все ответы и предложения приветствуются. Спасибо.

1
Charas 25 Апр 2017 в 09:35

2 ответа

Лучший ответ

Попробуй это.

$this -> db -> order_by('FIELD ( table.id, 1, 11, 4,2,21,3,5,7 )');

ссылка

5
webpic 25 Апр 2017 в 06:42

Чистый Mysql ответ: да, вы можете упорядочить поле по заданному списку с помощью функции MYSQL FIELD()

SELECT *
FROM mytable 
WHERE id IN ('1', '11', '4', '2', '21', '3', '5', '7')
ORDER BY FIELD(id, '1', '11', '4', '2', '21', '3', '5', '7')
0
Jason Joslin 25 Апр 2017 в 06:40
43603319