Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
38
Rozdział2:Zapytaniadopojedynczejtabeli
Wprzypadkuidentyfikatorów,którezgodnezformatemidentyfikatorów
regularnych,separowanieichjestopcjonalne.Naprzykładdotabelinazwa-
nejOrderDetailsiumieszczonejwschemacieSalesmożnaodwoływaćsię
zapomocąwyrażeniaSales.OrderDetails,"Sales"."OrderDetails"lub[Sales]
.[OrderDetails].Osobiściepolecamnieużywanieseparatorów,jeśliniewyma-
gane,ponieważpowodujeto„zaśmiecanie”kodu.Dodatkowo,oiletomysami
przypisujemyidentyfikatory
,zawszezalecamstosowanieidentyfikatorówregu-
larnych,naprzykładOrderDetails,anieOrderDetails.
KlauzulaWHERE
KlauzulaWHEREokreślapredykatlubwyrażenielogicznesłużącedofiltrowaniawierszy
zwracanychprzezfazęFROM.WfazieWHERE,kolejnejfazielogicznegoprzetwarzania
zapytania,zwracanetylkotewiersze,dlaktórychwyrażenielogicznemawartość
TRUE.Wprzykładziezapytania(listing2-1)fazaWHEREprzepuszczatylkotezamówie-
nia,którezłożyłklient71.
FROMSales.Orders
WHEREcustid=71
Spośród830wierszyzwróconychprzezfazęFROM,fazaWHEREprzepuszczatylko31
wierszy
,dlaktórychidentyfikatorklienta(customerID)mawartość71.Abyzobaczyć,
którewierszeotrzymamywodpowiedzipozastosowaniufiltrucustid=71,urucha-
miamyponiższezapytanie.
SELECTorderid,empid,orderdate,freight
FROMSales.Orders
WHEREcustid=71;
Zapytanietogenerujenastępującedanewyjściowe:
orderid
---
---
---
--
10324
10393
10398
10440
10452
10510
10555
10603
10607
10612
10627
10657
10678
empid
---
---
--
9
1
2
4
8
6
6
8
5
1
8
2
7
orderdate
---
---
---
--
2020-10-08
2020-12-25
2020-12-30
2021-02-10
2021-02-20
2021-04-18
2021-06-02
2021-07-18
2021-07-22
2021-07-28
2021-08-11
2021-09-04
2021-09-23
freight
---
---
---
---
--
214.27
126.56
89.16
86.53
140.26
367.63
252.49
48.77
200.24
544.08
107.46
352.69
388.98