Adfer Data gydag Ymholiadau SQL: Cyflwyno'r Datganiad SELECT

Mae'r Iaith Ymholiad Strwythuredig yn cynnig dull adfer data pwerus a hyblyg i ddefnyddwyr cronfa ddata - y datganiad SELECT. Yn yr erthygl hon, byddwn yn edrych ar ffurf gyffredinol y datganiad SELECT ac yn cyfansoddi ychydig o ymholiadau cronfa ddata sampl gyda'i gilydd. Os mai dyma'ch tro cyntaf i fyd yr Iaith Ymholiad Strwythuredig, efallai yr hoffech adolygu erthygl Sylfaenol SQL cyn parhau.

Os ydych chi'n bwriadu dylunio cronfa ddata newydd o'r dechrau, dylai'r erthygl Creu Cronfeydd Data a Thablau yn SQL fod yn bwynt da i ffwrdd.

Nawr eich bod wedi gwthio ar y pethau sylfaenol, gadewch i ni ddechrau ein hymchwiliad o'r datganiad SELECT. Fel gyda gwersi SQL blaenorol, byddwn yn parhau i ddefnyddio datganiadau sy'n cydymffurfio â safon ANSI SQL. Efallai yr hoffech chi ymgynghori â'r ddogfennaeth ar gyfer eich DBMS i benderfynu a yw'n cefnogi opsiynau datblygedig a allai wella effeithlonrwydd a / neu effeithiolrwydd eich cod SQL.

Ffurflen Gyffredinol y Datganiad SELECT

Mae ffurf gyffredinol y datganiad SELECT yn ymddangos isod:

SELECT select_list
O'r ffynhonnell
BLE cyflwr (au)
GRWP GAN mynegiant
HAWCH amod
GORCHYMYN GAN mynegiant

Mae llinell gyntaf y datganiad yn dweud wrth y prosesydd SQL bod y gorchymyn hwn yn ddatganiad SELECT ac y dymunwn adennill gwybodaeth o gronfa ddata. Mae'r select_list yn ein galluogi i bennu'r math o wybodaeth yr ydym am ei adfer.

Mae'r cymal FROM yn yr ail linell yn pennu'r tabl (au) cronfa ddata penodol dan sylw ac mae'r cymal LLE yn rhoi'r gallu i ni gyfyngu'r canlyniadau i'r cofnodion hynny sy'n bodloni'r amod (au) penodedig. Mae'r tri chymal olaf yn cynrychioli nodweddion uwch y tu allan i gwmpas yr erthygl hon - byddwn yn eu harchwilio yn erthyglau SQL yn y dyfodol.

Y ffordd hawsaf i ddysgu SQL yw, er enghraifft. Gyda hynny mewn golwg, gadewch i ni edrych ar rai ymholiadau cronfa ddata. Drwy gydol yr erthygl hon, byddwn yn defnyddio tabl y gweithiwr o gronfa ddata ffynonol adnoddau dynol XYZ Corporation i ddangos ein holl ymholiadau. Dyma'r tabl cyfan:

EmployeeID

LastName

Enw cyntaf

Cyflog

Adroddiadau i

1

Smith

John

32,000

2

2

Scampi

Sue

45,000

NULL

3

Kendall

Tom

29500

2

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

Adfer Tabl Gyfan

Mae Cyfarwyddwr Adnoddau Dynol XYZ Corporation yn derbyn adroddiad misol sy'n darparu cyflog a gwybodaeth adrodd ar gyfer pob gweithiwr cwmni. Mae cynhyrchu'r adroddiad hwn yn enghraifft o ffurflen symlaf y datganiad SELECT. Mae'n syml yn adfer yr holl wybodaeth sydd wedi'i chynnwys mewn tabl cronfa ddata - pob colofn a phob rhes. Dyma'r ymholiad a fydd yn cyflawni'r canlyniad hwn:

SELECT *
O'r gweithwyr

Yn syml iawn, dde? Mae'r seren (*) sy'n ymddangos yn y select_list yn gerdyn gwyllt a ddefnyddir i hysbysu'r gronfa ddata yr hoffem adennill gwybodaeth o'r holl golofnau ym mwrdd y gweithiwr a nodwyd yn y cymal ODDI. Roeddem eisiau adennill yr holl wybodaeth yn y gronfa ddata, felly nid oedd angen defnyddio cymal LLE i gyfyngu'r rhesi a ddewiswyd o'r bwrdd.

Dyma sut mae canlyniadau ein hymholiad yn edrych fel:

EmployeeID LastName Enw cyntaf Cyflog Adroddiadau i
---------- -------- --------- ------ ---------
1 Smith John 32,000 2
2 Scampi Sue 45,000 NULL
3 Kendall Tom 29500 2
4 Jones Abraham 35000 2
5 Allen Bill 17250 4
6 Reynolds Allison 19500 4
7 Johnson Katie 21000 3