Использование полевой функции для заказа результатов в in () order
В MySQL пункт «Порядок по сравнению» можно использовать для сортировки запроса в результате повышения или нисходящего порядка. При использовании метода in () может быть трудно убедиться, что результаты возвращаются в том же порядке, что и идентификаторы в предложении in (). К счастью, есть решение: функция поля.
Функция поля принимает два параметра: имя поля и список значений. Он возвращает индекс первого значения в списке, который соответствует значению поля. Например, следующий запрос будет возвращать значения 1, 2, 3, для столбца «ID» для строк, где значение равно 3, 2 или 1:
SELECT id, FIELD(id, 3, 2, 1) AS ordering FROM table_name;
, чтобы заказать результаты по порядку (), просто передавать в () значения положений () значения поля (). Функция:
SELECT id, FIELD(id, 4, 7, 3, 8, 9) AS ordering FROM table_name;
это вернет результаты в указанном порядке:
4 - Article 4 7 - Article 7 3 - Article 3 8 - Article 8 9 - Article 9]
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3