Задать вопрос
@phpcoder81

Как отсортировать данные на основе оператора IN?

SELECT * FROM `tab` WHERE `id` IN (1,2,3);
Выдаёт 1, 2, 3

SELECT * FROM `tab` WHERE `id` IN (3,2,1);
Тоже выдаёт 1, 2, 3

Я лишь знаю, можно отсортировать через FIELD, но может есть более простое решение?
Учитывая, что IN может состоять из нескольких тысяч номеров. Гигантский запрос получится.
  • Вопрос задан
  • 47 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@MaximaXXl
Может такой подойдет?
SELECT * FROM `tab` WHERE id in (2,3,1)
order by find_in_set (id, '2,3,1')
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы