Retrovanta Datumoj Kun SQLa Demandoj: Enkondukanta la SELECTan Rakonton

La Strukturita Konsila Lingvo proponas al la uzantoj de datumbazoj potencan kaj flekseblan retuŝan mekanismon - la deklaron de SELECT. En ĉi tiu artikolo, ni rigardos la ĝeneralan formon de la SELECT-deklaro kaj kunmetos kelkajn ekzemplajn datumbazajn demandojn kune. Se ĉi tio estas via unua incursio en la mondon de la Strukturita Query-Lingvo, vi eble volas revizii la artikolon SQL- Fundamentojn antaŭ ol daŭri.

Se vi deziras desegni novan datumbazon de nulo, la artikolo Krei datumbazojn kaj tabulojn en SQL devus pruvi bonan salton-punkton.

Nun, ke vi forkaptis la bazaĵojn, ni komencu nian esploradon de la SELECT-deklaro. Kiel kun antaŭaj SQL- lecionoj, ni daŭre uzos deklarojn, kiuj plenumas la normon ANSI SQL. Vi eble volas konsulti la dokumentadon por via DBMS por determini ĉu ĝi subtenas antaŭajn elektojn, kiuj povas plibonigi la efikecon kaj efikecon de via SQL-kodo.

La Ĝenerala Formo de la SELECTa Rakonto

La ĝenerala formo de la deklaro SELECT aperas sube:

Elektu elektran liston
De fonto
KIE- kondiĉo
GRUPO DE esprimo
Havas kondiĉon
ORDO DE esprimo

La unua linio de la deklaro diras al la SQL-procesoro, ke ĉi tiu komando estas ekspozicio de SELECT kaj ke ni deziras rekuperi informon de datumbazo. La unuaranga listo permesas al ni specifi la tipon de informoj, kiujn ni deziras rekuperi.

La DE- klaŭzo en la dua linio specifas la specifajn datumbazajn tabelojn engaĝitaj kaj la KAJ klaŭzo donas al ni la kapablon limigi la rezultojn al tiuj registroj, kiuj plenumas la specifajn kondiĉojn . La finaj tri klaŭzoj reprezentas antaŭajn funkciojn ekster la medio de ĉi tiu artikolo - ni esploros ilin en estontaj SQL-artikoloj.

La plej facila maniero por lerni SQL estas ekzemple. Kun tio en menso, ni komencu rigardi iujn datumbazajn demandojn. Laŭlonge de ĉi tiu artikolo, ni uzos la tablon de la oficisto de la fikcia datumbazo de XYZ Corporation por ilustri ĉiujn niajn demandojn. Jen la tuta tablo:

EmployeeID

Familia nomo

UnuaName

Salario

Raportoj

1

Smith

Johano

32000

2

2

Scampi

Sue

45000

NULL

3

Kendalo

Tom

29500

2

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

Retrovanta Entute Tablon

La Direktoro de Homaj Rimedoj de XYZ Corporation ricevas monatan raporton disponigante salajron kaj raportadon de informoj por ĉiu firmao. La generacio de ĉi tiu raporto estas ekzemplo de la plej simpla formo de la SELECT-aserto. Ĝi simple rekuperas la tutan informon enhavitan en datumbaza tablo - ĉiu kolumno kaj ĉiu vico. Jen la konsulto, kiu plenumos ĉi tiun rezulton:

Elektu *
De dungitoj

Bela simpla, ĉu ne? La asterisko (*) aperas en la elektita listo estas kartono uzita por informi la datumbazon, kiun ni ŝatus ricevi informojn de ĉiuj kolumnoj en la tablo de la oficisto identigita en la klaŭzo DE. Ni volis rekuperi la tutan informon en la datumbazo, do ne necese uzi WHERE-klaŭzon restrikti la vicojn elektitajn el la tablo.

Jen kion niaj konsiloj rezultas kiel:

EmployeeID Familia nomo UnuaName Salario Raportoj
---------- -------- --------- ------ ---------
1 Smith Johano 32000 2
2 Scampi Sue 45000 NULL
3 Kendalo Tom 29500 2
4 Jones Abraham 35000 2
5 Allen Bill 17250 4
6 Reynolds Allison 19500 4
7 Johnson Katie 21000 3