Autor Zpráva
novalu
Profil
Zdravím,

mám docela složitý SQL dotaz, ovšem zjistil jsem, že chybu mám v použití subselectu "...WHERE column IN (x, y, z)...". Rád bych, aby SELECT vybral data přesně podle zadání v řadě hodnot.

Dotaz
SELECT id FROM comments WHERE id IN (5,4,2,3,1);
vrací výsledek v pořadí 1 2 3 4 5

Chtěl bych, aby to ale SQL neseřazovalo od nejmenšího po největší a výsledek byl tedy seřazen dle mého určení - 5 4 2 3 1

Je to možné? Díky za odpověď...
yFang
Profil
novalu
Co třeba zkusit použít ORDER BY?
novalu
Profil
yFang
Jenže já nechci výsledek řadit vzestupně ani sestupně. Chci ho řadit podle dynamicky vytvořené podmínky v IN subselectu.
Kajman_
Profil *
SELECT id FROM comments WHERE id IN (5,4,2,3,1) order by field(id,5,4,2,3,1)
novalu
Profil
Díky moc, samozřejmě to funguje :)
Toto téma je uzamčeno. Odpověď nelze zaslat.