Кві
30
select in, order by
категорія: mysql
Задача: Вибрати з БД всіх юзерів по заданому списку, і відсортувати по тому ж списку.
Є тестова табличка:
| Id | Name | Data |
|---|---|---|
| 1 | Anton | aaaaa |
| 2 | Vovay | bbbbb |
| 3 | Serg | ccccc |
| 4 | Iren | ddddd |
Список кого потрібно вибрати: Iren,Vovay,Serg
Вибираємо дані:
SELECT * FROM users WHERE Id IN (Iren,Vovay,Serg)
Як посортувати?
Юзаєм функцію: FIND_IN_SET
Результат:
SELECT * FROM users WHERE Id IN (Iren,Vovay,Serg) ORDER BY FIND_IN_SET(Name, "Iren,Vovay,Serg")
Ось таке сортування в конструкції IN мускула.
P.S.: Пост написаний через те, що уже двічі шукав цю інфу у гуглі.

