D'Aféierung vun der WOULE Klausel an der Zwëschenzäit Conditioun
De Structured Query Language (SQL) gëtt Datebank Benotzer mat der Fäegkeet fir personaliséiert Queryën ze kreéieren fir Informatiounen aus Datenbanken ze extrahéieren. An engem fréiere Artikel unhand vun der Explosioun vun Informatioun aus enger Datebank explodéiert mat SQL SELECT Queries . Loosst eis op dëser Diskussioun ergräifen a kucken, wéi Dir fortgeschniddene Queryën ausfëllt fir Daten ze kréien déi mat spezifesche Konditiounen entsprécht.
Komme mer e Beispill vir, deen op der allgemeng benotzt benotzt Northwind-Datebank baséiert, déi oft mat Datebankprodukter als Tutorial verbannt ginn.
Hei ass en Auszuch aus der Produktqualitéit vun der Datebank:
ProductID | ProductName | SupplierID | QuantityPerUnit | Eenzelpräis | UnitsInStock |
---|---|---|---|---|---|
1 | Chai | 1 | 10 Boxen x 20 Säiten | 18.00 | 39 |
2 | Chang | 1 | 24 - 12 oz Flaschen | 19.00 | 17 |
3 | Aniseed Sirrup | 1 | 12 - 550 ml Flaschen | 10.00 | 13 |
4 | Chef Anton's Cajun Seasoning | 2 | 48 - 6 Ozeer | 22.00 | 53 |
5 | Chef Anton's Gumbo Mix | 2 | 36 Boxen | 21.35 | 0 |
6 | Grousse Boysenberry Spread | 3 | 12 bis 8 oz Glas | 25.00 | 120 |
7 | Oncle Bob's Organic Dry Pears | 3 | 12-1 lb pkgs. | 30.00 | 15 |
Einfache Begrenzung
Déi éischt Restriktioune wäerte mir op eiser Ufro opgefëllt sinn, schloen einfachen Grenzen. Mir kënnen dës an der WHERE Klausel vun der SELECT Abfrage spezifizéieren, mat einfachen Konditioun Aussoe gebaut mat Standardoperateur wéi <,>,> =, a <=.
Eischtens, lass et eng einfache Abfrage probéieren, déi eis erlaabt eng Lëscht vun all Artikelen an der Datebank ze kréien, déi e Unitprice vun méi wéi 20.00 hunn:
Dëst produzéiert eng Lëscht vu véier Produiten, wéi et hei ënnendrënner steet:
ProductName UnitPrice ------- -------- Chef Anton's Gumbo Mix 21.35 Chef Anton's Cajun Gewierze 22.00 Bomi-Boysenberry Spread 25,00 Onkel Bob's Organic Dry Pears 30,00Mir kënnen och d'WHERE Klausel mat String-Wäerter benotzen. Dëst gréisstendeels bemierkt Zeechen op Zuelen, mat A representéiert de Wäert 1 a Z representéieren de Wäert 26. Zum Beispill konnten mir all Produkter mat Namens ugefangen mat U, V, W, X, Y oder Z mat der folgender Ufro weisen:
SELECT ProductName FROM PRODUITEN WËCK ProduktName> = 'T'Wat produzéiert d'Resultat:
ProductName ------- Onkel Bob's Organic Dry PearsExpressioun vu Ranges mat Grenzen
D'WHESS-Klausel erméiglecht eis och eng Rei vu Konditioune op e Wäert ëmsetzen duerch verschidde Benotzungsbedéngungen. Zum Beispill, wann mir eis Ufro upresséieren wollten an d'Resultater op Produkter mat Präisser tëscht 15.00 a 20.00 limitéieren, konnten mir déi folgend Ufro benotzen:
SELECT ProductName, UnitPrice FROM PRODUKTE WIESE UnitPrice> 15,00 an UnitPrice <20,00Dëst produzéiert d'Resultat:
ProductName UnitPrice ------- -------- Chai 18,00 Chang 19,00Ausgesi vun Ranges mat ZWECK
SQL bitt och eng Ofkiirzung BEZUELEN Syntax, déi d'Zuel vun de Konditioune reduzéiert, déi mer brauchen an der Abonnement méi lëschteg maachen ze maachen. Zum Beispill, anstatt déi zwou WHERE Bedingunge uewen ze benotzen, kënnen déi selwecht Ufro ausgedréckt ginn:
SELECT ProductName, UnitPrice FROM PRODUITEN WIESE UnitPrice BETWEEN 15.00 a 20.00Wéi an eisem anere Konditiounsklauselen, funktionnelt BETWEEN och mat String-Wäerter. Wa mir eng Lëscht vun all Länner, déi mat V, W oder X beginnt, produzéiert wëlle mer d'Query:
SELECT ProductName FROM PRODUITEN WËSSEN ProduktName ZWÉIEREN "A" an "D"Wat produzéiert d'Resultat:
ProductName ------- Aniseed Syrup Chai Chang Chef Anton Gumbo Mix Chef Anton's Cajun SeasoningD'WHESS-Klausel ass e stabile Deel vun der SQL Sprooch, déi Iech et erméiglecht fir Resultater op Wäerter ze limitéieren, déi an spezifizéierter Produktreihe falen. Et ass ganz allgemeng benotzt fir d'Geschäftslogik auszerechnen an soll e Bestanddeel vun all Toolbox professionelle Datenbanken sinn.
Et ass oft hëllefräich fir gemeinsam Klauselen an eng gespeckte Prozedur ze integréieren, déi et ouni SQL-Wëssen accessibel ass.