Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment sélectionner les lignes mysql dans l'ordre de la clause IN

Utilisez la fonction FIND_IN_SET :

SELECT e.* 
  FROM EMPLOYEE e 
 WHERE e.code in (1,3,2,4) 
ORDER BY FIND_IN_SET(e.code, '1,3,2,4')

Ou utilisez une instruction CASE :

SELECT e.* 
  FROM EMPLOYEE e 
 WHERE e.code in (1,3,2,4) 
ORDER BY CASE e.code
           WHEN 1 THEN 1 
           WHEN 3 THEN 2
           WHEN 2 THEN 3
           WHEN 4 THEN 4
         END