Rekipere Done ak SQL Queries: Entwodwi Deklarasyon an chwazi

Lekti Lang estriktire a ofri itilizatè baz done yon mekanis pwisan ak fleksib rekipere done - deklarasyon an chwazi. Nan atik sa a, nou pral pran yon gade nan fòm la an jeneral nan deklarasyon an chwazi epi konpoze yon queries kèk baz done echantiyon yo ansanm. Si sa a se premye plonge ou nan mond lan nan lang nan estriktire Query, ou ka vle revize atik SQL fondamantal yo anvan yo kontinye.

Si w ap chèche konsepsyon yon baz done nouvo nan grafouyen, atik Kreye baz done ak Tablo nan SQL yo ta dwe pwouve yon bon sote-off pwen.

Koulye a, ke ou te fwote moute sou Basics yo, kite la kòmanse eksplorasyon nou an nan deklarasyon an chwazi. Menm jan ak leson SQL anvan yo, nou pral kontinye sèvi ak deklarasyon ki konfòme avèk estanda ANSI SQL la. Ou ka vle konsilte dokiman an pou DBMS ou pou detèmine si li sipòte opsyon avanse ki ka amelyore efikasite ak / oswa efikasite nan kòd SQL ou.

Fòm nan Jeneral nan Deklarasyon an chwazi

Fòm la an jeneral nan deklarasyon an chwazi parèt anba a:

Chwazi select_list
Soti nan sous
KI KOTE kondisyon (yo)
Gwoup pa ekspresyon
HAVING kondisyon
LÒD POU ekspresyon

Liy nan premye nan deklarasyon an di processeur a SQL ke lòd sa a se yon deklarasyon SELECT e ke nou vle rekipere enfòmasyon ki sòti nan yon baz done. Select_list la pèmèt nou presize kalite enfòmasyon nou vle rekipere yo.

DEZYÈM LA nan liy dezyèm lan espesifye tab la baz done espesifik (yo) ki enplike ak kloz la KI KOTE ba nou kapasite nan limite rezilta yo nan dosye sa yo ki satisfè kondisyon yo espesifye (yo) . Final twa paragraf yo reprezante karakteristik avanse deyò sijè ki abòde lan atik sa a - nou pral eksplore yo nan tan kap vini SQL.

Fason ki pi fasil yo aprann SQL se pa egzanp. Avèk sa nan tèt ou, se pou yo kòmanse gade nan kèk queries baz done. Pandan tout atik sa a, nou pral sèvi ak tablo anplwaye a soti nan fiktiv XYZ Kòporasyon resous imen yo ilistre tout demann nou an. Isit la nan tab la tout antye:

EmployeeID

Siyati

Premye non

Salè

ReportsTo

1

Smith

Jan

32000

2

2

Scampi

Sue

45000

NULL

3

Kendall

Tom

29500

2

4 Jones Abraram 35000 2
5 Allen Bill 17250 4
6 Reynolds Allison 19500 4
7 Johnson Katie 21000 3

Retrete yon tab tout

Direktè Resous Imèn XYZ Corporation resevwa yon rapò chak mwa ki bay salè ak rapò enfòmasyon pou chak anplwaye konpayi. Jenerasyon rapò sa a se yon egzanp fòm senplifye SELECT deklarasyon an. Li senpleman rekupèr tout enfòmasyon ki genyen nan yon tab baz done - chak kolòn ak chak ranje. Isit la nan rechèch la ki pral akonpli rezilta sa a:

SELECT *
FROM anplwaye yo

Jis dwat, dwa? Asterisk (*) ki parèt nan select_list la se yon kardkad ki itilize pou enfòme baz done a ke nou ta renmen rekipere enfòmasyon ki sòti nan tout kolòn yo nan tablo anplwaye a idantifye nan kloz la FROM. Nou te vle rekipere tout enfòmasyon ki nan baz done a, kidonk li pa t 'nesesè yo sèvi ak yon kloz KI MOUN limite ranje yo chwazi nan tablo a.

Men ki rezilta rechèch nou an sanble:

EmployeeID Siyati Premye non Salè ReportsTo
---------- -------- --------- ------ ---------
1 Smith Jan 32000 2
2 Scampi Sue 45000 NULL
3 Kendall Tom 29500 2
4 Jones Abraram 35000 2
5 Allen Bill 17250 4
6 Reynolds Allison 19500 4
7 Johnson Katie 21000 3