Mysql
 sql >> Database >  >> RDS >> Mysql

Come selezionare le righe MySQL nell'ordine della clausola IN

Usa la funzione TROVA_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')

Oppure usa un'istruzione 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