sql >> Databáze >  >> RDS >> Mysql

Udržování pořádku v dotazu MySQL IN

Jak zmiňuje druhá odpověď:dotaz, který jste zveřejnili, nemá nic o tom, v jakém pořadí chcete výsledky získat, pouze jaké výsledky byste chtěli získat.

K uspořádání vašich výsledků bych použil ORDER BY FIELD():

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

Seznam argumentů FIELD může mít proměnnou délku.



  1. PHP:Varování:sort() očekává, že parametr 1 bude pole, daný zdroj

  2. Jak používat dynamické názvy sloupců v příkazu UPDATE nebo SELECT ve funkci?

  3. Funkce JSON_TABLE() v Oracle

  4. Jak zjistit třetí nebo nᵗʰ maximální plat z platové tabulky?