Podsumowanie: w tym samouczku dowiesz się, jak używać funkcji OracleRANK()
do obliczania rangi wierszy w zbiorze wierszy.
Wprowadzenie do funkcji Oracle RANK ()
funkcjaRANK()
jest funkcją analityczną, która oblicza rangę wartości w zbiorze wartości.
funkcjaRANK()
zwraca tę samą rangę dla wierszy o tych samych wartościach. Dodaje liczbę powiązanych wierszy do powiązanej rangi, aby obliczyć następną rangę., W związku z tym stopnie mogą nie być kolejnymi numerami.
funkcjaRANK()
jest przydatna dla zapytań top-N I bottom-N.
poniżej przedstawiono składnięRANK()
funkcja:
order_by_clause
jest wymagana. Określa kolejność wierszy w każdej partycji, do której ma zastosowanie funkcja RANK()
.
klauzula partycji zapytań, jeśli jest dostępna, dzieli wiersze na partycje, do których ma zastosowanie funkcja RANK()
., W przypadku pominięcia przyczyny partycji zapytania, cały zestaw wyników jest traktowany jako pojedyncza partycja.,tabela o nazwie rank_demo
składająca się z jednej kolumny:
Po Drugie, Wstaw kilka wierszy do rank_demo
tabela:
Po Trzecie, zapytanie z rank_demo
tabela:
Po czwarte, użyj funkcji RANK()
, aby obliczyć rangę dla każdego wiersza rank_demo
tabela:
poniżej przedstawiono wynik:
pierwsze dwa wiersze otrzymały tę samą rangę 1., Trzeci rząd otrzymał rangę 3, ponieważ drugi rząd otrzymał już rangę 1. Kolejne trzy rzędy otrzymały tę samą rangę 4, a ostatni rząd otrzymał rangę 7.
przykłady funkcji Oracle RANK ()
do demonstracji użyjemy tabeliproducts
z przykładowej bazy danych.,
funkcja Oracle RANK() prosty przykład
poniższe polecenie oblicza rangę każdego produktu według jego ceny katalogowej:
oto częściowe wyjście:
aby uzyskać 10 najdroższych produktów, użyj następującej instrukcji:
w tym przykładzie wyrażenie common table zwróciło produkty z ich rang i zapytaniem zewnętrznym tylko pierwsze 10 najdroższych produktów.,
oto wyjście:
Korzystanie z funkcji Oracle RANK() z partycją według przykładu
poniższy przykład zwraca 3 najdroższe produkty dla każdej kategorii:
w ten przykład:
- najpierw klauzula
PARTITION BY
podzieliła produkty na wiele partycji według kategorii. - następnie klauzula
ORDER BY
posortowała wiersze w każdej partycji według ceny katalogowej w porządku malejącym., - na koniec funkcja
RANK()
obliczała rangę dla każdego wiersza w każdej partycji. Ponownie zainicjalizował rangę dla każdej partycji.
poniżej przedstawiono wynik:
w tym samouczku nauczyłeś się, jak obliczyć rangę wartości w zestawie wartości za pomocą Oracle RANK()
function.
- czy ten tutorial był pomocny?
- YesNo
Leave a Reply