Autor Zpráva
Sylar
Profil
Zdravím,
mám dotaz, který mi řadí nejprve neaktivní položky a následně aktivní, ale všechny vzetupně. Potřeboval bych, aby se neaktivní řadily stále vzestupně, ale aktivní sestupně - lze to nějak v jednom dotazu?

SELECT id, zobraz, date, nazev FROM b_upominky ORDER BY IF(zobraz = '0', 0, 1), date ASC
Monkeys
Profil *
Skus takto ale neviem ci je to syntakticky spravne

SELECT id, zobraz, date, nazev 
FROM b_upominky 
ORDER BY 
CASE zobraz 
WHEN 0 THEN date ASC 
WHEN 1 THEN date ASC 
ELSE 0 
END

M.
Sylar
Profil
Monkeys:
Nelíbí se mu tam ta mezera mezi "date" a "asc"

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ASC WHEN 1 THEN date DESC ELSE 0 END
Monkeys
Profil *
Sylar:
Vymaz asc za date a daj to na koniec za end
Kajman
Profil
Mohlo by jít něco jako
ORDER BY 
  IF(zobraz = '0', 0, 1),
  IF(zobraz = '0', date, null),
  date DESC
Sylar
Profil
Kajman:
Skvělé, to je ono. Díky

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0