Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Wprowadzeniedofunkcjiokna
11
zwróćpoprzedniąpozycję
wprzeciwnymprzypadkuzwróćliczbędotychczasprzetworzonychwierszy
Rysunek1-2stanowigraficznąilustracjętejuproszczonejprocedury
.
orderid
---
10865
10981
11030
10889
10417
iii
---
---
-----
2008-02-0200:00:00i00016387i501
orderdate
2008-03-2700:00:00i00015810i002
2008-04-1700:00:00i00012615i053
2008-02-1600:00:00i00011380i004
2007-01-1600:00:00i00011188i405
---
---
---
---
---
---
---
---
---
val
---
---
----
rnk
-
RYSUNEK1-2Uproszczonaprocedurawyznaczaniapozycjiwrankingu
Jakwspomniałem,choćzaprezentowanaproceduraprowadzidouzyskaniapra-
widłowegowyniku,niejestcałkiemzgodnazrzeczywistością.Sytuacjędodatkowo
komplikujefakt,uproszczonaproceduraprzypominazycznyprocesrealizowa-
niatejoperacjiprzezsystemSQLServer.Jednakniniejszaksiążkakoncentrujesię
nienafizycznejimplementacji,lecznawarstwiekoncepcyjnej,czylijęzykuimodelu
logicznym.Wzwiązkuztymmówiąco„niezgodnościuproszczonejproceduryzrze-
czywistością”miałemnamyślito,zperspektywyjęzykaobliczeniarealizowane
wsposóbopartynazbiorach,aniewsposóbiteracyjny
.Należypamiętać,żejęzyk
SQLjestniezależnyodfizycznejimplementacjiwaparaciebazydanych.Towarstwa
zycznaodpowiadazaustalenie,wjakisposóbobsłużyćlogiczneżądanietak,aby
wjaknajszybszymczasieuzyskaćprawidłowywynik.
Aterazspróbujęwyjaśnić,comamnamyśli,mówiącobardziejzaawansowanym
iprawidłowymzrozumieniumechanizmudziałaniafunkcjioknazperspektywyjęzy-
ka.Funkcjadefiniujeosobne,niezależneoknodlakażdegowierszawzbiorzewyni-
kówkwerendy
.Jeślispecyfikacjaoknaniezawierażadnychograniczeń,napoczątku
każdeoknoobejmujewszystkiewierszezawartewzbiorzewynikówkwerendy
.Jednak
możemyrozszerzaćspecyfikacjęoknaoróżneelementy(m.in.omówionewdalszej
częścirozdziałupartycjeiramy),któreograniczajązbiórwierszywkażdymoknie.
Rysunek1-3ilustrujekoncepcjęnaprzykładziezaprezentowanejwcześniejkwe-
rendyzfunkcjąRANK.
orderid
---
10865
10981
11030
10889
10417
iii
---
---
-----
2008-02-0200:00:00i00016387i50
orderdate
2008-03-2700:00:00i00015810i00
2008-04-1700:00:00i00012615i05
2008-02-1600:00:00i00011380i00
2007-01-1600:00:00i00011188i40
---
---
---
---
---
---
---
---
---
val
---
---
----
rnk
-
1
2
3
4
5
RYSUNEK1-3Zaawansowanaprocedurawyliczaniapozycjiwrankingu