sql >> Database >  >> RDS >> Mysql

Orde handhaven in MySQL IN-query

Zoals het andere antwoord vermeldt:de zoekopdracht die u heeft geplaatst, heeft niets te maken met de volgorde waarin u uw resultaten wilt hebben, alleen welke resultaten u wilt krijgen.

Om uw resultaten te ordenen, zou ik ORDER BY FIELD():

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

De lijst met argumenten voor FIELD kan een variabele lengte hebben.



  1. Proactieve MySQL-bewaking (Developer Studio/Advisors Angle)

  2. JSON_DEPTH() – Vind de maximale diepte van een JSON-document in MySQL

  3. Doorgaan met invoegingen in Oracle wanneer er een uitzondering wordt gemaakt

  4. Waarom is het selecteren van gespecificeerde kolommen en alles verkeerd in Oracle SQL?