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

Vedligeholdelse af orden i MySQL IN-forespørgsel

Som det andet svar nævner:den forespørgsel, du har sendt, har intet om, hvilken rækkefølge du vil have dine resultater, bare hvilke resultater du gerne vil have.

For at bestille dine resultater, ville jeg bruge ORDER BY FIELD():

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

Argumentlisten til FIELD kan have variabel længde.



  1. PostgreSQL:kørende antal rækker for en forespørgsel 'efter minut'

  2. Sådan fungerer age() i PostgreSQL

  3. Sådan fungerer TIME_TO_SEC() i MariaDB

  4. SQL Server Update Trigger, Hent kun ændrede felter