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

Mantenimento dell'ordine nella query MySQL IN

Come menziona l'altra risposta:la query che hai pubblicato non ha nulla sull'ordine in cui desideri ottenere i risultati, solo su quali risultati vorresti ottenere.

Per ordinare i tuoi risultati, userei ORDER BY FIELD():

SELECT * FROM foo f where f.id IN (2, 3, 1)
ORDER BY FIELD(f.id, 2, 3, 1);

L'elenco degli argomenti in FIELD può essere di lunghezza variabile.