Една от най-мощните концепции в анализа на SQL данни е функцията прозорец, отне ми малко практика, за да я разбера наистина и тя стана изключително полезна в моето пътуване с машинно обучение, както ще видите тук в тази статия.

Научаването да използвам този инструмент в различни ситуации направи моя анализ на данни ефективен. Функцията Window ми позволи да сравня един ред с друг, без да правя обединения! Това означаваше, че мога да се науча да правя прости неща като създаване на текуща обща сума, както и трудни неща като определяне дали един ред е по-голям от предишния ред и да го класифицирам въз основа на моите открития.

Най-практичният пример за прозоречна функция е текуща обща сума, например, да кажем, че искате да изчислите текуща обща сума за това колко стандартна хартия Kiwanda е продала днес.

Можете да видите, че тази заявка създава текуща сума за агрегиране, без да се използва GROUP BY. Нека разбием синтаксиса и да видим как работи.

Първата част на това агрегиране изглежда много като всяко друго агрегиране, добавянето на OVER го обозначава като функция за прозорец. Можете да прочетете горната агрегация като; вземете сумата от стандартното количество във всички редове, водещи до даден ред, по реда на възникнали в.

Нека кажем, че вместо това искаме да започнем текущата обща сума НАД в началото на всеки месец. За да стесним прозореца от целия набор от данни до отделни групи в набора от данни, ние използваме функцията PARTITION BY.

Сега тази заявка групира и подрежда заявката в месеца, в който са извършени транзакциите. В рамките на всеки месец тя се подрежда по настъпили в и текущите общи суми в този текущия ред и всички предишни редове със стандартно количество. Това се случва, когато групирате с помощта на PARTITION BY.

В случай, че все още сте объркан от ORDER BY, той просто подрежда определените колони по същия начин, както клаузата ORDER BY, с изключение на това, че третира всеки дял като отделен. Той също така създава текущата обща сума, без ORDER BY всяка стойност ще бъде просто сбор от всички стандартни стойности на количеството в съответния месец.

За да получите ясна картина, ето какво се случва, когато изпълним тази заявка с ORDER BY.

ORDER и PARTITION определят това, което се нарича прозорец; подреденото подмножество от данни, където се правят всички тези изчисления!

Видяхте защо една от най-мощните концепции в анализа на SQL данни е функцията прозорец, ще ви отнеме малко практика, за да я разберете наистина и да я видите изключително полезна. Прави ви анализатор на данни от световна класа в процеса, тъй като повечето SQL обучения завършват преди функцията прозорец.

Поздравления за четенето до края. Ако намирате това за полезно, пляскайте! така че другите хора да могат да го видят по-лесно.