Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Podstawyfunkcjiokna
15
10692
11011
10702
10625
10759
10926
10308
iii
1
1
1
2
2
2
2
878i00
933i50
330i00
479i75
320i00
514i40
88i80
20i55
21i85
7i72
34i20
22i81
36i67
6i33
165i833334
221i333334
-382i166666
129i012500
-30i737500
163i662500
-261i937500
Aterazwyobraźmysobie,żechcemydodaćwspółczynnikprocentowegoudziału
wcałkowitejsumieiróżnicędlaśredniejwartościwszystkichzamówień.Wtymcelu
musimydodaćkolejnewyrażenietabelaryczne,jakwlistingu1-2:
Listing1-2Mieszanieszczegółówiwynikówwdwóchkwerendachgrupujących
WITHCustAggregatesAS
(
SELECTcustid,SUM(val)ASsumval,AVG(val)ASavgval
FROMSalesiOrderValues
GROUPBYcustid
),
GrandAggregatesAS
(
SELECTSUM(val)ASsumval,AVG(val)ASavgval
FROMSalesiOrderValues
)
SELECTOiorderid,Oicustid,Oival,
CAST(100i*Oival/CAisumvalASNUMERIC(5,2))ASpctcust,
Oival-CAiavgvalASdiffcust,
CAST(100i*Oival/GAisumvalASNUMERIC(5,2))ASpctall,
Oival-GAiavgvalASdiffall
FROMSalesiOrderValuesASO
JOINCustAggregatesASCA
ONOicustid=CAicustid
CROSSJOINGrandAggregatesASGA;
Otowynikwykonaniatejkwerendy:
orderid
custid
val
pctcust
diffcust
pctall
diffall
---
---
-----
---
----
---
----
---
-----
---
---
---
---
---
----
---
---
---
-
10835
1
845i80
814i50
471i20
878i00
933i50
330i00
479i75
320i00
514i40
88i80
19i79
19i06
11i03
20i55
21i85
7i72
34i20
22i81
36i67
6i33
133i633334
0i07
-679i252072
10643
1
102i333334
-240i966666
165i833334
221i333334
-382i166666
129i012500
-30i737500
163i662500
-261i937500
0i06
0i04
0i07
0i07
0i03
0i04
0i03
0i04
0i01
-710i552072
10952
1
-1053i852072
10692
1
-647i052072
11011
1
-591i552072
10702
1
-1195i052072
10625
2
-1045i302072
10759
2
-1205i052072
10926
2
-1010i652072
10308
2
-1436i252072
iii