Autor Zpráva
simonik
Profil *
Jak vybrat poslední záznamy ne starší než měsíc a když neexistují, tak poslední dva záznamy tj. i starší?
Jedná se o výpis novinek z databáze.
Poslední jsem řešil pomocí LIMIT.

Díky
TomasJ
Profil
Zkus "... order by id desc limit 2"
simonik
Profil *
TomasJ:
To vybere poslední dva. Já ale chci vše ne starší měsíc, takže jich klidně může být 10. Jenom když neexistují, tak poslední dva JAKKOLIV stare.
TomasJ
Profil
simonik:
Aha tak to nevím. Na to je použití PHP kódu.
Kajman_
Profil *
where datum>date_add('2010-11-29', interval 1 month)
simonik
Profil *
Kajman:
Díky, ale to zase nezobrazí žádný záznam, když budou všechny starší než 1 měsíc.
Keeehi
Profil
simonik:
Tak si potom v PHP zjisti počet vrácených řádků a případně se dotazuj do databáze znovu.
simonik
Profil *
Odpověď jsem našel na php.vrana.cz :


(SELECT * FROM novinky ORDER BY vytvoreno DESC LIMIT 3)
UNION (SELECT * FROM novinky WHERE vytvoreno > NOW() - INTERVAL 1 MONTH ORDER BY vytvoreno DESC)
Kajman_
Profil *
Ale když budete mít právě jeden záznam z posledního měsíce, tak to nevypíše, jak jste původně chtěl.

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