Atlasiet SQL datu diapazonā

click fraud protection

The Strukturēta vaicājumu valoda (SQL) nodrošina datu bāzes lietotājiem iespēju izveidot pielāgotus vaicājumus informācijas iegūšanai no datu bāzēm. Iepriekšējā rakstā mēs izpētījām informācijas iegūšanu no datu bāzes izmantojot SQL SELECT vaicājumus. Paplašināsim šo diskusiju un izpētīsim, kā jūs varat darboties tālāk vaicājumi lai izgūtu datus, kas atbilst konkrētiem nosacījumiem.

Apskatīsim piemēru, kas balstīts uz parasti izmantoto Ziemeļvējš datu bāze, kurā bieži tiek piegādāti datu bāzes produkti kā apmācība.

Lūk, fragments no datu bāzes tabulas Produkti:

ProductID Produkta nosaukums SupplierID QuantityPerUnit Vienības cena UnitsInStock
1 Čai 1 10 kastes x 20 somas 18.00 39
2 Čangs 1 24 - 12 oz pudeles 19.00 17
3 Anīsa sīrups 1 12 - 550 ml pudeles 10.00 13
4 Šefpavāra Antona Cajun garšvielas 2 48 - 6 oz burkas 22.00 53
5 Šefpavāra Antona Gumbo Mix 2 36 kastes 21.35 0
6 Vecmāmiņas Boysenberry izplatīšanās 3 12 - 8 oz burkas 25.00 120
7 Tēvoča Boba organiskās kaltētās bumbieres 3 12 - 1 mārciņa gab. 30.00 15
Produktu tabula

Vienkārši robežnosacījumi

instagram viewer

Pirmie ierobežojumi, kurus mēs noteiksim savam vaicājumam, ietver vienkāršus robežnosacījumus. Mēs tos varam norādīt vaicājuma SELECT klauzulā WHERE, izmantojot vienkāršus nosacījumu paziņojumus, kas izveidoti ar standarta operatoriem, piemēram, ,> = un <=.

Vispirms izmēģināsim vienkāršu vaicājumu, kas ļauj mums iegūt visu datu bāzē esošo produktu sarakstu, kuru UnitPrice pārsniedz 20.00:

Atlasiet ProductName, UnitPrice
NO produktiem
KUR Vienības cena> 20.00

Tādējādi tiek izveidots četru produktu saraksts, kā parādīts zemāk:

ProductName UnitPrice

Šefpavāra Antona Gumbo Mix 21.35
Šefpavāra Antona Cajun garšvielas 22.00
Vecmāmiņas Boysenberry izplatīšanās 25.00
Tēvoča Boba organiskās kaltētās bumbieres 30.00

Mēs varam arī izmantot WHERE klauzulu ar virkņu vērtībām. Tas būtībā pielīdzina rakstzīmes skaitļiem, ar A apzīmē vērtību 1 un Z - vērtību 26. Piemēram, mēs varētu parādīt visus produktus ar nosaukumiem, kas sākas ar U, V, W, X, Y vai Z ar šādu vaicājumu:

Atlasiet ProductName
NO produktiem
WHERE ProductName> = 'T'

Kas rada rezultātu:

Produkta nosaukums

Tēvoča Boba organiskās kaltētās bumbieres

Diapazonu izteikšana, izmantojot robežas

Klauzula WHERE ļauj mums arī ieviest vērtības diapazona nosacījumu, izmantojot vairākus nosacījumus. Piemēram, ja mēs vēlētos izpildīt mūsu vaicājumu iepriekš un ierobežot rezultātus ar produktiem, kuru cenas ir no 15:00 līdz 20:00, mēs varētu izmantot šādu vaicājumu:

Atlasiet ProductName, UnitPrice
NO produktiem
KUR Vienības cena> 15.00 UN Vienības cena <20.00

Tādējādi tiek iegūts šāds rezultāts:

ProductName UnitPrice

Čai 18.00
Čanga 19.00

Izteikt diapazonus starp

SQL nodrošina arī saīsni Starp sintaksi, kas samazina iekļaujamo nosacījumu skaitu un padara vaicājumu vieglāk lasāmu. Piemēram, tā vietā, lai izmantotu divus iepriekš minētos WHERE nosacījumus, mēs varētu izteikt to pašu vaicājumu kā:

Atlasiet ProductName, UnitPrice
NO produktiem
KUR Vienības cena STARP 15.00 UN 20.00

Tāpat kā ar citām mūsu nosacījumu klauzulām, BETWEEN darbojas arī ar virkņu vērtībām. Ja mēs vēlētos izveidot visu valstu sarakstu, kas sākas ar V, W vai X, mēs varētu izmantot vaicājumu:

Atlasiet ProductName
NO produktiem
WHERE ProductName STARP "A" un "D"

Kas rada rezultātu:

Produkta nosaukums

Anīsa sīrups
Čai
Čangs
Šefpavāra Antona Gumbo Mix
Šefpavāra Antona Cajun garšvielas

Klauzula WHERE ir spēcīga SQL valodas daļa, kas ļauj ierobežot rezultātus līdz vērtībām, kas ietilpst noteiktos diapazonos. To ļoti bieži izmanto, lai palīdzētu izteikt biznesa loģiku, un tam vajadzētu būt daļai no katra datubāzes profesionāļa rīkkopas. Bieži vien ir noderīgi iekļaut kopīgās klauzulas glabātajā procedūrā, lai padarītu to pieejamu tiem, kuriem nav SQL zināšanu.

instagram story viewer