Zadejte hledaný výraz...

Poradie riadku

FAKAM
verified
rating uzivatele
(10 hodnocení)
9. 9. 2011 15:10:56
Zdravím,
Príklad: mám SELECT s WHERE ID =5;
Ako vypíšem hodnotu(pozicia) riadka, kde tento SELECT splňuje podminku?
Príklad: podmienke vyhovuje 3. riadok, teda 3.
Dík
9. 9. 2011 15:10:56
https://webtrh.cz/diskuse/poradie-riadku#reply675348
naniccz
verified
rating uzivatele
(3 hodnocení)
9. 9. 2011 15:19:52
Jak se pozná, že je to 3. řádek? Podle data vložení? Tak to pak budeš muset mít sloupec s datem vložení, podle toho to seřadit, udělat celý výpis tabulky (bez podmínky) a použít třeba RANK() na přidělení čísel, a potom to použít jako vnořený dotaz v souvislosti s tou tvojí podmínkou
---------- Post added 9.9.2011 at 15:29 ----------
neřeším zde optimalitu, ale třeba takhle
9. 9. 2011 15:19:52
https://webtrh.cz/diskuse/poradie-riadku#reply675347
FAKAM
verified
rating uzivatele
(10 hodnocení)
9. 9. 2011 15:59:46
proste mám napríklad 10 záznamov. v tabuľke nemám žiadne dáta ktoré hovoria na akej je pozícii. Chcel by som vedieť na akom riadku sa nachádza záznam
9. 9. 2011 15:59:46
https://webtrh.cz/diskuse/poradie-riadku#reply675346
naniccz
verified
rating uzivatele
(3 hodnocení)
9. 9. 2011 16:04:07
Záznamy v tabulce nemají žádné specifické pořadí, dokud nejsou seřazeny podle ORDER BY a DB je může vracet v náhodném pořadí, takže výsledek "řádek je 1. v pořadí" je správnou odpovědí na tvůj požadavek; řešením je tedy :-D
9. 9. 2011 16:04:07
https://webtrh.cz/diskuse/poradie-riadku#reply675345
martinzsa
verified
rating uzivatele
(1 hodnocení)
9. 9. 2011 16:28:42
aky zmysel alebo aku vypovednu hodnotu to akoze ma mat ? naco ti je vystup ze v konkretnom selecte sa hodnota nachadzala na 3tej pozicii ? nech rozmyslam ako rozmyslam nijake logicke vysvetlenie nenachadzam...
9. 9. 2011 16:28:42
https://webtrh.cz/diskuse/poradie-riadku#reply675344
naniccz
verified
rating uzivatele
(3 hodnocení)
9. 9. 2011 16:36:19
A to já to chápu, mám třeba časy závodníků v cíli, a chci vědět, kolikátý byl Franta. Ale k tomu právě musí mít ty hodnoty k sestavení pořadí. Když nejsou (jak píše), tak to tedy vlastně taky nechápu...
9. 9. 2011 16:36:19
https://webtrh.cz/diskuse/poradie-riadku#reply675343
Luboš Lerch
verified
rating uzivatele
(38 hodnocení)
9. 9. 2011 16:52:09
Když budu vycházet z toho, že v Oracle existuje něco jako ROWID volatelné při selectu, tak u MySQL by toho mohlo jít docílit například pomocí proměnné:
set @cisloradku := 0;
select *, @cisloradku := @cisloradku +1 as poradizavodnika from tabulka
Pokud tedy dobře rozumím Tvému požadavku...
9. 9. 2011 16:52:09
https://webtrh.cz/diskuse/poradie-riadku#reply675342
FAKAM
verified
rating uzivatele
(10 hodnocení)
9. 9. 2011 17:01:59
proste chcem strankovanie a vediet na akej som pozicii
9. 9. 2011 17:01:59
https://webtrh.cz/diskuse/poradie-riadku#reply675341
naniccz
verified
rating uzivatele
(3 hodnocení)
9. 9. 2011 19:21:01
Však v druhym postu je řešení, akorát je pro Oracle. Pro něco jiného si najdi jak v tom nahradit ROWNUM
9. 9. 2011 19:21:01
https://webtrh.cz/diskuse/poradie-riadku#reply675340
duben
verified
rating uzivatele
(49 hodnocení)
13. 9. 2011 14:44:49
Nejdřív musíš podle nečeho data řadit. Předpokládám, že podle ID, když uvádíš ID = 5. Problém SQL dat je ten, že je můžeš řadit podle jakéhokoliv sloupce a pak se pořadí tvého konkrétního řádku může dost měnit. Takže musíěš mít nějaký jednoznačný unikátní identifikátor podle kterého data seřadíš, může to být ID, nějaké pole s datumem apod.
Jinak řešení jde nalét poměrně snadno na Google pomíc fráze "MySQL get row number", konkrétně hned první článek http://jimlife.wordpress.com/2008/09/09/displaying-row-number-rownum-in-mysql/ ukazuje SQL dotaz kterým jde udělat přesně to co chceš.
13. 9. 2011 14:44:49
https://webtrh.cz/diskuse/poradie-riadku#reply675339
Napsal FAKAM;699094
proste chcem strankovanie a vediet na akej som pozicii
Pro účely stránkování jednoduše používejte LIMIT a v session (nebo jiném perzistentním parametru) si držte číslo stránky, na které jste.
---------- Příspěvek doplněn 17.09.2011 v 09:29 ----------
Napsal duben;700619
Nejdřív musíš podle nečeho data řadit.
Ve skutečnosti podle ničeho řadit nemusíte. Ale obvykle je dobrý nápad to dělat a téměř vždy je tam alespoň jeden sloupec, který z hlediska uživatele dává smysl pro default řazení - typicky čas nebo id.
17. 9. 2011 09:24:52
https://webtrh.cz/diskuse/poradie-riadku#reply675338
Pro odpověď se přihlašte.
Přihlásit