MS Access - Funkce STDEV

17. 11. 2012, Vladimír Klaus, přečteno 2633x

Kalkulačky
MS Access
SQL

Výběrová směrodatná odchylka nám určí, jak velký je rozptyl mezi zkoumanými hodnotami – jak hodně se liší od průměrné hodnoty (pomocí funkce AVG jsme již zjistili, že to je v případě částek u objednávek 1 696,50 Kč). Čím bude odchylka větší, tím je i větší rozptyl. V našem případě to pak znamená, že máme mezi zákazníky jak ty, kteří objednávají za malé částky, ale i za vysoké.

SELECT STDEV(Castka) AS VybSmerOdch FROM Objednavky

SQL obrázek

Výsledkem bude 1439,55. Co to znamená prakticky? Znamená to, že (statisticky vzato) většina zákazníků objednává zboží v rozsahu 256,95 (průměr mínus odchylka) až 3136,05 (průměr plus odchylka).

Důležitost tohoto údaje vyplyne z příkladu, kdy máme 3 objednávky v hodnotách 1339, 1439 a 1539. Průměr vyjde stejný, tedy 1439, ale odchylka bude pouhých 100, tedy 14x menší! Z aritmetického průměru tedy nelze usuzovat, jaké jsou běžné objednávky.

Pokud nás zajímají objednávky pod 1000 Kč, je zřejmé, že i výběrová směrodatná odchylka bude v absolutní hodnotě menší. Ale i zde bude patrné, že někdo objedná třeba jen za 400 jiný za 800.

SELECT STDEV(Castka) AS VybSmerOdch, AVG(Castka) AS Prumer
FROM Objednavky
WHERE Castka < 1000

SQL obrázek

A teď konečně něco praktického – jak získáme objednávky, které patří k těm statisticky nejvyšším, tedy, jejichž částky jsou větší než průměr + odchylka.

SELECT * FROM Objednavky
WHERE Castka >
(SELECT AVG(Castka) FROM Objednavky) +
(SELECT STDEV(Castka) FROM Objednavky)

SQL obrázek

Jakým dotazem získáme naopak ty úplně (statisticky) nejnižší objednávky? Získáme je lehce upraveným dotazem, a jak jste si jistě vyzkoušeli, výsledek je zcela prázdný. To znamená, že nemáme žádné objednávky, které by byly za extrémně nízkou cenu.

SELECT * FROM Objednavky
WHERE Castka <
(SELECT AVG(Castka) FROM Objednavky) -
(SELECT STDEV(Castka) FROM Objednavky)