«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как заказать результаты MySQL по заказу пункта () с использованием полевой функции?

Как заказать результаты MySQL по заказу пункта () с использованием полевой функции?

Опубликовано в 2025-03-22
Просматривать:950

How to Order MySQL Results by IN() Clause Order using the FIELD Function?

Использование полевой функции для заказа результатов в 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