Autor | Zpráva | ||
---|---|---|---|
sloncz Profil |
#1 · Zasláno: 9. 3. 2014, 11:21:38
Dobrý den, mám na webu články a na u každého článku bych chtěl mít POUZE dvě tlačítka (DALŠÍ a PŘEDCHOZÍ). V databázi má každý článek svoje id, problém je v tom, že ty id nejsou popořadě, protože některé články už byly smazány. Chtěl bych se zeptat, jestli je možné vytáhnout z databáze pomocí sql dotazu id článků, které je po aktuálním (Např. jsem na stránce s id=12, článek s id 13 už v databázi není, tak se ukáže další, který v databázi je a to bude id 14)
|
||
Fisir Profil |
#2 · Zasláno: 9. 3. 2014, 11:25:53
Reaguji na sloncza:
Než na ID ber raději ohled na skutečné vydání článku. SELECT * FROM articles WHERE published > "2013-09-05" LIMIT 1 |
||
sloncz Profil |
#3 · Zasláno: 9. 3. 2014, 15:31:13
Takže mám vybírat článek, který byl napsán před/po datu, který má aktuální článek?
|
||
Fisir Profil |
#4 · Zasláno: 9. 3. 2014, 15:37:41
Reaguji na sloncza:
Ano. Vždy jeden a na ten pak odkazovat. |
||
sloncz Profil |
#5 · Zasláno: 11. 3. 2014, 21:22:06
Opět zdravím a mám problém.
Další článek s sql příkazem SELECT * FROM articles WHERE published > "2013-09-05" LIMIT 1 funguje, ovšem když chci vytáhnout článek předtím sql příkazem SELECT * FROM articles WHERE published < "2013-09-05" LIMIT 1 tak mi to vytáhne úplně nejstarší článek a ne ten, co je hned před aktuálním. |
||
mlasevic Profil |
#6 · Zasláno: 11. 3. 2014, 21:42:35
Ahoj, zkus toto - SELECT * FROM articles WHERE published < "2013-09-05" order by published desc LIMIT 1
|
||
juriad Profil |
#7 · Zasláno: 11. 3. 2014, 22:09:41
sloncz:
Pokud ti záleží na pořadí, vždy používej klauzuli ORDER BY sloupec . V opačném případě může databáze vrátit výsledek v nějakém pořadí. Často to bude pořadí vytvoření záznamu, ale nelze na to spoléhat; takové chyby se špatně odhalují.
Klauzule LIMIT bez ORDER BY je skoro sebevražda, pokud ti ovšem není úplně jedno, který záznam dostaneš. |
||
sloncz Profil |
Já si vytahuji jen id
SELECT id FROM articles WHERE published > "2013-09-05" LIMIT 1 toho dalšího článku, na který potom odkazuji, ale problém je v tom, že mi to vytáhne id článku, který byl přidán úplně jako první a ne toho, který byl přidán před tím, než byl přidán aktuální článek. mlasevic: funguje, děkuji mnohokrát! :) |
||
Časová prodleva: 11 let
|
0