Liczba porządkowa pozycji na liście
Liczba porządkowa pozycji na liście
Super szybkie rozwiązanie sytuacji, w której chcemy uzyskać liczbę porządkową (pozycję) pozycji na liście (czyli row’a w zapytaniu). W bazie istnieje tabelka, w której znajdują się np.: ceny artykułu w różnych sklepach. Chcąc dowiedzieć się, jaką dany sklep zajmuje pozycję względem cen, normalnie trzeba by było pobrać całą listę i przerabiać ją w PHP’ie, albo robić skomplikowane zapytanie. Ale jest inne rozwiązanie.
Z pomocą przychodzi Oracle’owy rownum:
1
2
3
4
5
6
7
8
SELECT rownum FROM ( 
SELECT @rownum:=@rownum+1 rownum, 
t.* 
FROM 
(SELECT @rownum:=0) r, 
shopStats t 
ORDER BY t.lngAvgGrade) t1 
WHERE t1.id=132
 Ten post jest udostępniony na licencji  CC BY 4.0  przez autora.
