СКЛ Перцентиле

Skl Percentile



Које су две уобичајене речи које су толико блиско повезане да бисте помислили да су исте? За нас програмере базе података, то би била СКЛ база података и статистика.

Један од уобичајених статистичких прорачуна који се појављују чак иу администрацији базе података је процентил.

Процентил је статистичка мера која нам омогућава да поделимо скуп података на једнаке делове сегмената. Улога перцентила је да пруже увид у дистрибуцију података, што је начин на који разумемо како су вредности распоређене.







У овом водичу ћемо научити како можемо израчунати перцентиле у СКЛ-у да поделимо податке на различите сегменте.



Табела узорака

Почнимо са постављањем основне табеле која садржи узорке података у сврху демонстрације. Ово нам помаже да илуструјемо како се понашају различите методе израчунавања перцентила и резултујући резултат.



Хајде да направимо табелу под називом „производи“ која садржи информације о намирницама. Клаузула „креирај табелу“ је следећа:





ЦРЕАТЕ ТАБЛЕ производи (

продуцт_ид ИНТ ПРИМАРИ КЕИ АУТО_ИНЦРЕМЕНТ,

назив_производа ВАРЦХАР( 255 ),

категорија ВАРЦХАР( 255 ),

цена ДЕЦИМАЛ( 10 , 2 ),

количина ИНТ,

екпиратион_дате ДАТЕ,

бар код БИГИНТ

);

Када креирамо табелу, можемо наставити и додати узорке података у табелу. Можемо користити следеће „инсерт“ изјаве:

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ( 'Куварска капа 25цм' ,
'пекара' ,
24.67 ,
57 ,
'2023-09-09' ,
2854509564204 );

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ( 'Препелица јаја - конзервирана' ,
'остава' ,
17.99 ,
67 ,
'2023-09-29' ,
1708039594250 );

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ( 'Кафа - Егг Ног Цапуццино' ,
'пекара' ,
92.53 ,
10 ,
'2023-09-22' ,
8704051853058 );

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ( 'крушка - бодљикава' ,
'пекара' ,
65.29 ,
48 ,
'2023-08-23' ,
5174927442238 );

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ( 'Паста - Анђеоска коса' ,
'остава' ,
48.38 ,
59 ,
'2023-08-05' ,
8008123704782 );

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ( 'Вино - Просеццо Валдобиаддене' ,
'произвести' ,
44.18 ,
3 ,
'2023-03-13' ,
6470981735653 );

На крају, требало би да имате следећу табелу:



СКЛ Перцентиле

Као што можете претпоставити, начин израчунавања перцентила може се разликовати у зависности од механизма базе података. Међутим, најчешћи метод је коришћење функција ПЕРЦЕНТИЛЕ_ДИСЦ() и ПЕРЦЕНТИЛЕ_ЦОНТ().

Ове функције су део стандардне СКЛ спецификације (2003). Дакле, ПостгреСКЛ и Орацле га морају подржавати.

ПЕРЦЕНТИЛЕ_ЦОНТ()

Почнимо са функцијом ПЕРЦЕНТИЛЕ_ЦОНТ(). Ова функција нам омогућава да израчунамо вредности перцентила као део скупа података.

Функција враћа интерполиране вредности које можда нису прецизне за одређену тачку података у вашем скупу података.

Синтакса функције је следећа:

ПЕРЦЕНТИЛЕ_ЦОНТ(перцентил) ВИТХИН ГРУПА ( ОРДЕР БИ име_колоне) ОВЕР ();

Функција прихвата следеће параметре:

  • Перцентил – Одређује жељену вредност процента (0,0 до 1,0).
  • цолумн_наме – Означава колону за коју желимо да израчунамо проценат.
  • ОВЕР () – Поставља функцију прозора да наведе цео скуп података.

Пример како да користите ову функцију је следећи:

СЕЛЕЦТ

ПЕРЦЕНТИЛЕ_ЦОНТ( 0.5 ) У СКЛОПУ ГРУПА ( ОРДЕР ПРЕМА цени) ПРЕКО () КАО средња вредност

ИЗ

производи;

Напомена: Дати упит ради само у ПостгреСКЛ-у пошто МиСКЛ не подржава употребу ИНТЕР ГРОУП.

Ово израчунава 50 тх перцентил датих података.

ПЕРЦЕНТИЛЕ_ДИСЦ()

Можемо да користимо функцију ПЕРЦЕНТИЛЕ_ДИСЦ() да израчунамо вредност перцентила као дискретну вредност директно из скупа података.

Функција враћа вредност која одговара стварној тачки података.

Синтакса функције је следећа (ПостгреСКЛ):

ПЕРЦЕНТИЛЕ_ДИСЦ(перцентил) ВИТХИН ГРУПА ( ОРДЕР БИ име_колоне) ОВЕР ();

Пример излаза је следећи:

СЕЛЕЦТ

ПЕРЦЕНТИЛЕ_ДИСЦ( 0,25 ) У СКЛОПУ ГРУПА ( ОРДЕР ПО цени) ПРЕКО () АС перцентиле_25

ИЗ

производи;

Ово би требало да израчуна 25 тх перцентил података.

Закључак

Овај водич је покрио како се користе различите функције за израчунавање перцентила у СКЛ базама података.