1. Uczyć się
  2. /
  3. Courses
  4. /
  5. Analiza szeregów czasowych w SQL Server

Connected

Exercise

Obliczanie mediany w SQL Server

W SQL Server nie ma funkcji MEDIAN(). Najbliższym odpowiednikiem jest PERCENTILE_CONT(), która wyznacza wartość odpowiadającą n-temu percentylowi w zbiorze danych.

Chcemy sprawdzić, jak bardzo mediana różni się od średniej w zależności od typu zdarzenia w naszym zbiorze zestawień zdarzeń. W tym celu porównamy funkcję AVG() z poprzedniego ćwiczenia z funkcją PERCENTILE_CONT(). Są to funkcje okna, które omówimy dokładniej w rozdziale 4. Na razie warto wiedzieć, że PERCENTILE_CONT() przyjmuje jeden parametr – percentyl (liczba dziesiętna z zakresu od 0. do 1.). Percentyl musi być określony wewnątrz uporządkowanej grupy w klauzuli WITHIN GROUP, a dane można opcjonalnie podzielić na partycje za pomocą klauzuli OVER. W sekcji WITHIN GROUP należy posortować dane według kolumny, której 50. percentyl chcemy wyznaczyć.

Instrukcje

100 XP
  • Uzupełnij brakującą wartość parametru funkcji PERCENTILE_CONT().
  • Wewnątrz klauzuli WITHIN GROUP() posortuj dane według liczby zdarzeń malejąco.
  • W klauzuli OVER() podziel dane według kolumny IncidentType (rzeczywista wartość tekstowa, nie identyfikator ID).