Klasyfikacja typów funkcji analitycznych w Oracle. Funkcje analityczne w Oracle i podstawowe funkcje techniczne

System zarządzania bazami danych Oracle jest jednym z najpopularniejszych przedstawicieli takiego oprogramowania. Przyciąga wielu użytkowników dzięki swojej szerokiej funkcjonalności i znakomitym funkcjom. I nic dziwnego, ile czasu jest już opracowywany! Więc co jest interesujące dla Oracle? Funkcje analityczne tego systemu DBMS stanowią ważną część zapewnionych możliwości. I rozważymy je w tym artykule.

Informacje ogólne

Przede wszystkim należy zauważyć, że funkcje analityczne Oracle mają określone możliwości, ale używają ogólnej składni. Aby je zrozumieć, należy zrozumieć, w jaki sposób dane:


  • sekcje.
  • Rozmieść.
  • Ustaw okna.
  • Jako teoretyczne wsparcie, książka Toma Kaity została podjęta. Materiał z tego zostanie podsumowany, ale rozważone zostaną tylko najważniejsze momenty. Jeśli potrzebujesz szczegółowych informacji, możesz skontaktować się ze źródłem. Ale wierz mi, wszystkie niezbędne informacje zostaną dostarczone w ramach artykułu.

    W sprawie funkcji

    Jak wyglądają? W Oracle funkcje analityczne są budowane na następującej zasadzie: Name (argument,) OVER (fragmentacja, sortowanie, okno). Jak zrozumieć, że jest to dokładnie to, czego potrzebujesz? Dzięki słowu POWYŻEJ. Pozwala zidentyfikować wprowadzoną funkcję jako analityczną. Wszystko, co idzie za POWYŻEJ, to opis cięcia danych, na podstawie których zostanie obliczony. A teraz kilka ogólnych słów o klasyfikacji. Warunkoworozróżnić cztery typy (w zależności od dostarczonych możliwości):


  • Funkcje rankingowe. Pozwalają one budować żądania "pierwszego N".
  • Funkcje okna. Wymagane do obliczania różnych agregatów (operacje grupowe).
  • Funkcje końcowe. Podobne do klauzuli 2, ale może działać ze wszystkimi wierszami grupy lub sekcji. Podstawową różnicą jest brak ORDER BY. Ta konstrukcja nie ma zastosowania do operatora OVER. Jeśli nie jest obecny, ta funkcja jest używana w odniesieniu do każdego wiersza sekcji lub grupy. Jeśli jest dostępny, jest stosowany do okna, które obejmuje przejście do innego typu (patrz: akapit 2).
  • Funkcje statystyczne. Jako przykład można wymienić STDEVJPOP, VAR_SAMP i inne. Pozwól obliczyć dla każdej nieuporządkowanej sekcji wartość wskaźników statystycznych.
  • Ogólnie można powiedzieć, że analityczne funkcje SQL Oracle zostały już uwzględnione. Ale tylko w ogólnych kategoriach. Nie ma ochoty rzucać rzeczy w połowie drogi, więc przyjrzyjmy się szczegółom. A to pomoże analitycznym funkcjom Oracle, których przykłady zostaną teraz rozważone.

    Projekt segmentacji

    Odbywa się to poprzez żądanie formularza PARTYCJA WEDŁUG wyrażenia [, ...]. Taka konstrukcja logicznie dzieli uzyskany zbiór na pewne grupy zgodnie z kryteriami określonymi przez wyrażenia cięcia. W takim przypadku funkcje analityczne Oracle są stosowane niezależnie w odniesieniu do każdego przedmiotu interakcji. Oznacza to, że po wykonaniu przetwarzania są resetowane dla nowej grupy. A co, jeśli konstrukcja cięcia nie jest określona? W takim przypadkuwynikowy zestaw będzie traktowany jako jedna grupa.

    zamawianie budowlane

    W tym przypadku należy użyć Formularz zamówienia wniosek wypowiedzi. Dodatkowo można zastosować DESC, ASC i NULLS FIRST /LAST. Ta konstrukcja służy do określania kryteriów sortowania danych w sekcji lub grupie. Korzystanie z ORDER BY może w znacznym stopniu wpłynąć na wynik, który prezentuje Oracle. Analityczna pierwszym oraz funkcje końcu, na przykład, prowadzone przez pierwsze i ostatnie elementy. Oznacza to, że mają odwrotną wartość! A co powiemy PIERWSZY i OSTATNI? Wskazują one, gdzie powinien być ustawiony na NULL przy zamawianiu na początku lub na końcu odcinka. Jeśli nie przewidują obecność ORDER BY, to będzie obliczana na podstawie średniej z całej grupy. I będzie wydawane dla każdej linii. Dlaczego? Faktem jest, że w tym przypadku funkcja jest uważana za ostateczną. Należy zauważyć, że zamawianie odbywa się wyłącznie w ramach grup lub sekcji.

    Konstrukcja okna

    Jego budowa jest dość skomplikowana. Po użyciu ustawiony jest mocno przywiązany lub przesuwanie okna (dane czasu ustawionego w ramach sekcji (grupy), które będą oddziaływać funkcji analitycznej. Można ustawić dolne i górne granice agregacji. Innymi słowy, w takich przypadkach podejmujemy decyzje o wykorzystaniu funkcja analityczna do siebie odcinków linii (grup) z numerem X i Y. za pomocą okna odgrywa ważną rolę ORDER bY. na sztywno przymocowany interwały standardowy wybór jest uważana za pierwszą linią obecnej grupie.

    Dlaczego funkcji analitycznych

    Technik a celem -zapewnia zwięzłe sformułowanie i pomaga przyspieszyć wykonywanie zapytań do bazy danych. Przed zwykłymi instrukcjami SQL mają następujące zalety:
  • Zmniejszenie obciążenia sieci. Na potrzeby całej serii zapytań potrzebnych wcześniej można teraz usunąć ją z bazy danych jeden po drugim.
  • Lakoniczny i prosty preparat. Dzięki tym ulepszonym możliwościom debugowania i rozumienia w porównaniu z tradycyjnymi środkami.
  • Sprawność przetwarzania. Funkcje analityczne mają algorytmy do obliczeń, które są zoptymalizowane w celu uzyskania wyników z większą szybkością.
  • Migracja na serwer. Wszystkie obliczenia są przeprowadzane na serwerze, którego zasoby z reguły są bardziej odpowiednie do tego zadania.
  • Ponadto wprowadzenie takich funkcji pozwoliło osiągnąć taki strategiczny cel, jakim jest zapewnienie podstawowego środka do budowy tak zwanych zbiorów danych analitycznych.

    Wniosek

    Co mogę powiedzieć na końcu artykułu? Funkcje analityczne są bardzo ciekawym rozwiązaniem. Aby lepiej zrozumieć ich specyfikę, możesz zostać przeszkolony w zakresie ich wykorzystania w złożonych i dużych bazach danych. Jako przykład dla porównania można wybrać następujące tradycyjne funkcje, SUMA, MAX i podobne do nich. Należy jednak pamiętać, że służą one jako pośredni wynik obliczeń. Dlatego można ich używać tylko z SELECT lub ORDER BY. Trzeba przyznać, że ten temat jest bardzo interesujący. Istnieje wiele odmian, a teoretyczne ich opisywanie jest problematyczne. Trzeba spróbować i pracowaćz zapytaniami

    Powiązane publikacje