Pogledajte određenu poruku
Staro 10. 12. 2011.   #1
_korso_
profesionalac
Qualified
 
Avatar _korso_
 
Datum učlanjenja: 21.06.2007
Poruke: 166
Hvala: 27
42 "Hvala" u 23 poruka
_korso_ is on a distinguished road
Default Mysql - redni broj sloga

Da li ima neki nacin da mi mysql vrati na kom mestu je ili koji je redni broj sloga neki podatak u trenutnom result setu.

Evo i primera.

Podatak ima pk=24.
Imam upit:
Kôd:
select * from table where foo=bar order by criteria1, criteria2
Podatak sa pk=24 je sada na mestu 4. mestu (4. slog/row u tabeli).

Ako izmenim upit:
Kôd:
select * from table where foo=baz order by criteria1
Podatak sa pk=24 je sada na mestu 38. mestu (38. slog/row u tabeli).

Meni generalno ne treba "select *" vec samo redni broj za taj kriterijum.
Nesto kao:
Kôd:
select "rownum for table.pk=24" from table where foo=baz order by criteria1
Bilo bi pozeljno da se ovo resi jednim upitom, jer ako ide vise njih ili subselect/view/ i sl. imacu dodatnu kompleksnost na ionako vec do sada kompleksnu stvar. Mada kakvo god da je resenje u krajnjem slucaju.

Kopam po manualu, al ne nalazim neku takvu magicnu f-ju.

Koliko sam procitao od jutros (nemojte da me drzite za rec, posto sam samo letimicno presao kada sam video da je Oracle), Oracle ima neku rownum rezervisanu promenjivu ili sta vec, gde prakticno u svakom selectu mozete da je navedete kao i polja i vraca vam sa tim slogom i njegov redni broj. Ako sam to dobro shvatio za Oracle (mozda i nisam) tako nesto slicno trazim i za Mysql.
__________________
Twitter
_korso_ je offline   Odgovorite uz citat