sql >> Databasteknik >  >> RDS >> Mysql

Upprätthålla ordning i MySQL IN-frågan

Som det andra svaret nämner:frågan du postade har ingenting om vilken ordning du vill ha dina resultat, bara vilka resultat du vill få.

För att beställa dina resultat skulle jag använda ORDER BY FIELD():

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

Argumentlistan till FIELD kan vara variabel längd.



  1. Göra beräkningar i MySQL vs PHP

  2. Sista ordet i en mening:I SQL (möjliga reguljära uttryck?)

  3. Konvertera 'datetime' till 'time' i SQL Server (T-SQL-exempel)

  4. Hur man uppdaterar länkade tabeller i Access 2016 efter att backend-databasen flyttats till en ny plats