24_SQL. Funkcje agregujące języka SQL Oracle: STUDDEV(), VARIANCE() i GROUP BY()

Do omówienia funkcji STUDDEV() , VARIANCE() i GROUP BY() skorzystamy z bezpłatnej bazy Oracle HR dostępnej tutaj: 

http://www.oracle.com/technetwork/database/express-edition/downloads/index.html

 

 Funkcje STUDDEV(),  VARIANCE() 

Są to funkcja wyświetlająca odchylenie standardowe i wariancję wartości liczbowych w kolumnie.

Teraz wyświetlimy wartości odchylenia standardowego i wariancji dla wynagrodzeń w tabeli EMPLOYEES. Wariancja jest odchyleniem standardowym do kwadratu, sprawdźmy czy tak jest.

SELECT

  ROUND(STDDEV(salary)) AS Odchylenie_standardowe,

  ROUND(VARIANCE(salary)) AS Wariancja,

  ROUND(SQRT(ROUND(VARIANCE(salary)))) AS Odchylenie_standardowe_2

  FROM EMPLOYEES;

Otrzymujemy tabelę wynikową:

 Funkcja GROUP BY() 

Funkcja ta umożliwia grupowanie wyników ze względu na zawartość wybranej kolumny.

Spróbujmy policzyć pracowników z tabeli EMPLOYEES według działów, w których pracują.

SELECT

  DEPARTMENT_ID,

  COUNT(EMPLOYEES.LAST_NAME) AS Liczba_pracowników

  FROM EMPLOYEES

  GROUP BY DEPARTMENT_ID

  ORDER BY DEPARTMENT_ID;

Otrzymujemy tabelę wynikową: