Kuchagua Data Ndani ya Ranges katika SQL

Kuanzisha kifungu cha WHERE na wakati wa hali

Lugha ya Swala ya Swala (SQL) hutoa watumiaji wa database na uwezo wa kuunda maswali yaliyotengenezwa ili kuondokana na taarifa kutoka kwenye databases. Katika makala ya awali, tuliangalia kuchukua taarifa kutoka kwenye duka kwa kutumia maswali ya SQL SELECT . Hebu tangaza juu ya majadiliano hayo na uchunguza jinsi gani unaweza kufanya maswali ya juu ili kupata data inayofanana na hali maalum.

Hebu fikiria mfano kulingana na database ya kawaida ya Northwind, ambayo mara kwa mara hutoka na bidhaa za database kama mafunzo.

Hapa ni excerpt kutoka meza ya bidhaa ya database:

Jedwali la Bidhaa
BidhaaID Jina la bidhaa Wafanyabiashara WingiPerUnit UnitPrice UnitsIntock
1 Chai 1 Sanduku 10 x mifuko 20 18.00 39
2 Chang 1 Vitambaa 24 - 12 oz 19.00 17
3 Siri iliyosababishwa 1 Vitambaa 12 - 550 ml 10.00 13
4 Chejun Anton Cajun Seasoning 2 48 - 6 mitungi ya oz 22.00 53
5 Gumbo Mix ya Chef Anton 2 Sanduku 36 21.35 0
6 Wamajana wa Boysenberry Kuenea 3 12 - 8 jani mito 25.00 120
7 Ndugu za Mjomba Bob za Peke Bob 3 12 - 1 lb pkgs. 30.00 15

Masharti rahisi ya Boundary

Vikwazo vya kwanza tutaweka kwenye swala letu vinahusisha hali rahisi ya mipaka. Tunaweza kutaja haya katika kifungu cha WHERE cha swali la SELECT, kwa kutumia kauli rahisi hali iliyojengwa na waendeshaji wa kawaida, kama <,>,> =, na <=.


Kwanza, hebu tujaribu swala rahisi ambayo inaruhusu tuondoe orodha ya bidhaa zote kwenye daraka ambazo zina Unit Unit ya zaidi ya 20.00:

Chagua Nambari ya Bidhaa, UnitPrice FROM bidhaa ambayo ambapo UnitPrice> 20.00

Hii hutoa orodha ya bidhaa nne, kama ilivyoonyeshwa hapa chini:

UnitName UnitPrice ------- -------- Mchanganyiko wa Gumbo Anton ya Gumbo 21.35 Cheo cha Cajun Anton Seasoning 22.00 Boysenberry Bibi ya Kuenea 25.00 Mjomba Bob's Peanic kavu Pears 30.00

Tunaweza pia kutumia kifungu cha WHERE na maadili ya kamba. Hii kimsingi inalinganisha wahusika na idadi, na A inayowakilisha thamani ya 1 na Z inayowakilisha thamani ya 26. Kwa mfano, tunaweza kuonyesha bidhaa zote na majina ya mwanzo na U, V, W, X, Y au Z kwa swali lifuatayo:

Chagua Bidhaa Jina kutoka kwa bidhaa NINI Bidhaa Nambari> = 'T'

Ambayo hutoa matokeo:

ProductName ------- Pears ya Bizari ya Peki iliyokaa

Inaonyesha mipangilio kwa kutumia mipaka

Kifungu cha WHERE pia kinatuwezesha kutekeleza hali mbalimbali kwa thamani kwa kutumia hali nyingi. Kwa mfano, ikiwa tulitaka kuchukua swali letu hapo juu na kupunguza matokeo kwa bidhaa na bei kati ya 15.00 na 20.00, tunaweza kutumia swala lifuatayo:

Chagua Nambari ya Bidhaa, UnitPrice KUTOKA bidhaa ambazo UnitPrice> 15.00 NA UnitPrice <20.00

Hii hutoa matokeo yaliyoonyeshwa hapa chini:

UnitName UnitPrice ------- -------- Chai 18.00 Chang 19.00

Inaonyesha mipangilio kwa pamoja

SQL pia hutoa njia ya mkato kati ya syntax ambayo inapunguza idadi ya masharti ambayo tunahitaji kuifanya na inafanya swala liweze kuonekana zaidi. Kwa mfano, badala ya kutumia hali mbili zilizopo hapo juu, tunaweza kutoa hoja sawa kama:

Chagua Nambari ya Bidhaa, UnitPrice kutoka kwa bidhaa ambazo UnitPrice kati ya 15.00 NA 20.00

Kama ilivyo na vifungu vyetu vingine, wakati wa kazi na maadili ya kamba pia. Ikiwa tulitaka kuzalisha orodha ya nchi zote zinazoanza V, W au X, tunaweza kutumia swali:

Chagua Bidhaa Jina kutoka kwa bidhaa NINI Bidhaa NI PAKATI "A" na "D"

Ambayo hutoa matokeo:

ProductName ------- Mchanganyiko wa Syrup Chai Chang Chef Mchanganyiko wa Gumbo Anton ya Cajun Seasoning Seasoning

Kifungu cha WHERE ni sehemu yenye nguvu ya lugha ya SQL ambayo inakuwezesha kuzuia matokeo kwa maadili yanayoanguka ndani ya vigezo maalum. Ni kawaida kutumika sana kueleza mantiki ya biashara na inapaswa kuwa sehemu ya chombo cha kila mtaalamu wa database.

Mara nyingi husaidia kuingiza vifungu vya kawaida katika utaratibu uliohifadhiwa ili uweze kupatikana kwa wale ambao hawajui ujuzi wa SQL.