СКЛ група по датуму

Skl Grupa Po Datumu



СКЛ ГРОУП БИ клаузула је моћан алат за груписање и агрегирање података. Пружа одличан начин груписања података на основу специфичних критеријума, а затим извођење радње на резултирајућим групама.

Један уобичајени случај употребе ГРОУП БИ је груписање по датумима. У овом водичу ћемо научити основе рада са клаузулом ГРОУП БИ и разговарати о томе како да је користимо за груписање података по датумима у СКЛ-у.







БЕЛЕШКА: Претпостављамо да имате основно разумевање СКЛ-а. У сврху демонстрације, користимо примере у овом туторијалу са МиСКЛ 8. Међутим, можете слободно да пренесете концепте овог упутства на друге машине базе података засноване на СКЛ-у.



Пример табеле:

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



Да бисте креирали табелу, користите следећи упит:





ЦРЕАТЕ ТАБЛЕ трансакције (
ид инт не нулл ауто_инцремент примарни кључ,
датум ДАТУМ,
износ ДЕЦИМАЛ ( 10 , 2 )
) ;


Када направите табелу, уметните узорке података као што је приказано у наставку:

ИНСЕРТ ИНТО трансакције ( датум , износ )
ВРЕДНОСТИ
( '2023-01-01' , 100,00 ) ,
( '2023-01-02' , 50.00 ) ,
( '2023-01-03' , 75,00 ) ,
( '2023-01-04' , 200,00 ) ,
( '2023-01-05' , 150,00 ) ,
( '2023-01-06' , 175,00 ) ,
( '2023-01-07' , 50.00 ) ,
( '2023-01-08' , 100,00 ) ,
( '2023-01-09' , 25.00 ) ,
( '2023-01-10' , 75,00 ) ,
( '2023-01-11' , 150,00 ) ,
( '2023-01-12' , 200,00 ) ,
( '2023-01-13' , 250,00 ) ,
( '2023-01-14' , 175,00 ) ,
( '2023-01-15' , 150,00 ) ,
( '2023-01-16' , 100,00 ) ,
( '2023-01-17' , 50.00 ) ,
( '2023-01-18' , 75,00 ) ;


Ово би требало да додате насумичне податке у табелу трансакција. Можемо користити наредбу селецт да прикажемо резултујућу табелу на следећи начин:



изаберите * од трансакција;


Табела излаза:


Када припремимо податке, можемо прећи на следећи корак.

СКЛ група по датуму

Као што можете да претпоставите, користимо клаузулу ГРОУП БИ да поделимо податке у датој табели на основу одређених вредности. Синтакса клаузуле је следећа:

СЕЛЕЦТ колона1, колона2, ...
ФРОМ име_табеле
ГРОУП БИ колона1, колона2, ...;


У претходној синтакси користимо клаузулу ГРОУП БИ да наведемо колоне према којима желите да групишете податке.

Из претходне табеле можемо да користимо колону датума да групишемо податке као што је приказано у следећем упиту:

СЕЛЕЦТ датум , СУМ ( износ ) као Укупан износ
ИЗ трансакција
ГРУПА ОД датум ;


Претходни упит обавља основне прорачуне и додаје укупан износ за сваки дан користећи функцију сум(). Затим групишемо податке на основу вредности датума. Добијена табела је следећа:

Формат Дате

Понекад ћемо можда морати да форматирамо датум и учинимо га читљивијим. Пример је следећи:

СЕЛЕЦТ ДАТЕ_ФОРМАТ ( датум , '%м/%д/%И' ) као форматирани_датум, СУМ ( износ ) као Укупан износ
ИЗ трансакција
ГРУПА ОД датум ;


Ово би требало да врати вредности датума у ​​наведеном формату на следећи начин:

Опсег датума СКЛ филтера

Такође можемо да филтрирамо скуп резултата према распону датума помоћу клаузуле ВХЕРЕ. Пример је следећи:

СЕЛЕЦТ ДАТЕ_ФОРМАТ ( датум , '%м/%д/%И' ) као форматирани_датум, СУМ ( износ ) као Укупан износ
ИЗ трансакција
ГДЕ датум ИЗМЕЂУ '2023-01-01' И '2023-01-15'
ГРУПА ОД датум ;


Добијена табела је приказана у наставку:


То је то! Начин груписања података из дате табеле на основу вредности датума.

Закључак

Овај водич је истраживао основе рада са клаузулом ГРОУП БИ у СКЛ-у за сортирање података на основу одређених вредности. Ово нам је омогућило да покријемо како да користимо клаузулу ГРОУП БИ да поделимо податке на основу вредности датума.