Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno PHP - SQL Select

Zdravím,

mám takový dotaz. V tabulce mám data, která mají hodnoty (zobrazit_od a zobrazit_do). Tyto hodnoty jsou typu datetime. Jak udělám kontrolu na webu pro výpis, aby mi to porovnalo AKTUÁLNÍ DATUM a podle toho se to buď zobrazilo nebo skrylo. Napadlo mě:

SELECT * FROM table WHERE (zobrazit_od BETWEEN 'neco' and 'neco') ORDER BY zobrazit_od DESC;

A potom kontrolovat konecne datum s aktuálním a vypsat to nebo ne. Ale to pak nemohu použít offset a limit pro stránkování.

Jak udělat, aby se potom dal použít LIMIT a OFFSET pro stránkování?

Předmět Autor Datum
ak udělám kontrolu na webu pro výpis, aby mi to porovnalo AKTUÁLNÍ DATUM a podle toho se to buď zobr…
wam_Spider007 21.01.2014 22:00
wam_Spider007
Díky moc pomohlo. poslední
Bayerus 21.01.2014 22:51
Bayerus

ak udělám kontrolu na webu pro výpis, aby mi to porovnalo AKTUÁLNÍ DATUM a podle toho se to buď zobrazilo nebo skrylo.

je to dost krkolomne popisane, ale asi si chcel zobrazit take zaznamy, kde aktualny datum je medzi zobrazit_od a zobrazit_do? Alebo?

To by si vyriesil jednoducho:

SELECT * FROM table WHERE NOW() BETWEEN zobrazit_od and zobrazit_do ORDER BY zobrazit_od DESC;

Na strankovanie musis pouzit uz trochu PHP.
Jednak si musis urobit select poctu riadkov. Potom si musis urcit, kolko riadkov na stranku chces zobrazovat a nakoniec cislo strany na ktorej sa nachadzas.
OFFSET je zaznam od ktoreho ides. Ten vypocitas ako (strana*pocet_zaznamov_na_stranu)-pocet_zaznamov_n a_stranu

a potom spravis jednoducho rovnaky select ako pri zistovani poctu riadkov len pridas limit:

SELECT * FROM table WHERE NOW() BETWEEN zobrazit_od and zobrazit_do ORDER BY zobrazit_od DESC LIMIT offset, pocet_zaznamov_na_stranu

Zpět do poradny Odpovědět na původní otázku Nahoru