Запознавање со клаузулата КАДЕ и СОБА
Структурниот јазик за пребарување (SQL) им овозможува на корисниците на базата на податоци да имаат можност да креираат кориснички пребарувања за да ги извлечат информациите од базите на податоци. Во една претходна статија, ние истражувавме вадење на информации од базата на податоци користејќи SQL SELECT пребарувања . Ајде да се прошириме по таа дискусија и да разгледаме како можете да извршите напредни пребарувања за да ги превземете податоците што одговараат на специфични услови.
Да го разгледаме примерот базиран на најчесто користената база на податоци Northwind, која честопати испорачува производи со база на податоци како туториал.
Еве еден извадок од табелата на производот на базата на податоци:
ProductID | ProductName | SupplierID | QuantityPerUnit | Единечната цена | UnitsInStock |
---|---|---|---|---|---|
1 | Чај | 1 | 10 кутии x 20 кеси | 18.00 | 39 |
2 | Чанг | 1 | Шишиња од 24 - 12 мл | 19.00 | 17 |
3 | Анасонски сируп | 1 | 12 - 550 ml шишиња | 10.00 | 13 |
4 | Готвач на Антон Чајун | 2 | 48 - 6 мл тегли | 22.00 | 53 |
5 | Готвач на готвач Антон | 2 | 36 кутии | 21.35 | 0 |
6 | Баба се шири од бобинки | 3 | 12 - 8 мл тегли | 25.00 | 120 |
7 | Органски сушени круши чичко Боб | 3 | 12 - 1 lb pkgs. | 30.00 | 15 |
Едноставни гранични услови
Првите ограничувања што ќе ги поставиме на нашето барање вклучуваат едноставни гранични услови. Ние можеме да ги специфицираме овие во клаузулата WHERE од SELECT пребарувањето, користејќи едноставни состојби изработени со стандардни оператори, како што се <,>,> =, и <=.
Прво, ајде да пробаме едноставно пребарување кое ни овозможува да извлечеме листа на сите производи во базата на податоци што имаат UnitPrice од повеќе од 20,00:
Ова произведува листа на четири производи, како што е прикажано подолу:
ProductName UnitPrice ------- -------- Chef Anton's Gumbo Mix 21.35 Chef Anton's Cajun Seasoning 22.00 Bambo's Spread 25.00 Bottles Organic Cried Pears 30.00Ние исто така можеме да ја користиме клаузулата КАДЕ со вредности на низа. Ова во основа ги изедначува ликовите со броеви, со А што ја претставува вредноста 1 и Z што ја претставува вредноста 26. На пример, можеме да ги прикажеме сите производи со имиња што почнуваат со U, V, W, X, Y или Z со следното барање:
SELECT ProductName ОД производи КАДЕ PRODUCTNAME> = 'T'Кој произведува резултат:
ProductName ------- Органски сушени круши од чичко БобИзразувајќи ги границите користејќи граници
Клаузулата КАДЕ исто така ни овозможува да имплементираме опсег на вредност на вредност со користење на повеќе услови. На пример, ако сакаме да го земеме погоре нашето прашање и да ги ограничиме резултатите на производи со цени помеѓу 15.00 и 20.00, би можеле да го искористиме следното барање:
Избери ProductName, UnitPrice FROM производи КАДЕ UnitPrice> 15.00 и UnitPrice <20.00Ова произведува резултат прикажан подолу:
ProductName UnitPrice ------- -------- Чај 18.00 Чанг 19.00Изразувајќи ги опсезите со BETWEEN
SQL, исто така, обезбедува кратенка BETWEEN синтакса која го намалува бројот на условите што треба да ги вклучиме и го прави полесно за читање. На пример, наместо да ги искористиме двете услови КАДЕ погоре, би можеле да го изразиме истото барање како:
SELECT ProductName, UnitPrice FROM products КАДЕ UnitPrice помеѓу 15.00 и 20.00Како и со нашите други клаузули за состојби, BETWEEN работи со низа вредности. Ако сакаме да создадеме листа на сите земји кои почнуваат со V, W или X, би можеле да го искористиме барањето:
SELECT ProductName ОД КАДЕ КАДЕ продуктска Име меѓу "А" и "Д"Кој произведува резултат:
ProductName ------- Aniseed Syrup Chai Chang Chef Антон's Gumbo Mix Chef Anton's Cajun SeasoningКлаузулата КАДЕ е моќен дел од јазикот на SQL кој ви дозволува да ги ограничите резултатите до вредностите што спаѓаат во определени опсези. Тоа е многу често се користи за да им помогне на изразуваат деловна логика и треба да биде дел од алатката за професионална база на податоци.
Често е корисно да се вклучат вообичаените клаузули во складирана постапка за да се направи достапна за оние без познавање на SQL.