SQL WHERE-klausul til filtrering af data

I denne øvelse vil vi diskutere, hvad SQL WHERE- sætningen er, og hvordan man bruger den. Vi vil også tale om flere betingelser ved at bruge AND- og OR- operatorer. 

SQL WHERE -udtrykket er til filtrering af data eller poster. Det bruges til at oprette en betingelse for kun at udtrække de nødvendige optegnelser. 

Udover at bruge WHERE- sætningen i SELECT- sætningen, kan vi også bruge den med UPDATE , DELETE og andre SQL- sætninger. Til denne øvelse bruger vi den dog kun i SELECT -sætningen.

Indholdsfortegnelse

Simpelt valg ved hjælp af SQL WHERE-klausul

Uden at bruge WHERE- sætningen i en SELECT- sætning, returnerer den alle rækkerne fra en bestemt tabel.

SQL WHERE-klausul til filtrering af data

For dette eksempel ønsker vi kun at få dataene med en Gadget- kategori.

SQL WHERE-klausul til filtrering af data


Så vi skal bruge WHERE- klausulen til at begrænse resultaterne. I dette eksempel oprettede vi en betingelse om, at den skulle kontrollere kolonnen Kategori og kun returnere posterne, hvis kategorien er Gadgets .

SQL WHERE-klausul til filtrering af data

Bemærk, at når vi bruger en streng, skal vi omslutte den med enkelte anførselstegn ( ' ' ). 

Når vi bruger tal eller heltal, behøver vi ikke bruge enkelte anførselstegn. For eksempel ønsker vi at hente de poster, hvor prisen er mindre end eller lig med 30.

Så vi skal bare oprette en forespørgsel, hvor den skal kontrollere kolonnen Pris og returnere disse rækker med en værdi på 30 eller mindre end 30. Som du kan se, har vi ikke også omgivet tallet til enkelte anførselstegn, fordi det er et heltal.

SQL WHERE-klausul til filtrering af data

SQL WHERE-klausul med AND-operatøren

Vi kan også bruge WHERE- sætningen med flere kolonner sammen med AND- og OR -operatorerne.

AND- operatoren fungerer, hvis begge betingelser er SAND . Så det bruges til at få poster, hvor flere betingelser er SAND .

For eksempel vil vi i dette scenarie have posterne, hvor producenten er GizmoWorks, og prisen er mindre end 20.  

SQL WHERE-klausul til filtrering af data

Vi har oprettet flere betingelser med WHERE- sætningen sammen med AND- operatoren som vist på billedet.

SQL WHERE-klausul til filtrering af data

På vores bord har vi 2 rækker med en GizmoWorks-producent. Prisen på 2. række er dog mere end 20. Derfor vil resultatet kun returnere den række, der vender tilbage til de 2 betingelser, som vi har angivet. 

SQL WHERE-klausul til filtrering af data

SQL WHERE-klausul med OR-operatøren

ELLER- operatør betyder, at den skal returnere poster, hvis en af ​​betingelserne er sande. Så hvis AND kun returnerer en post, hvor begge eller alle betingelserne er sande, vil brug af OR- operator returnere en post, selvom kun én betingelse returnerer sand. 

Lad os f.eks. sige, at vi ønsker at hente de poster, hvor produktnavnet enten er SingleTouch eller MultiTouch .

SQL WHERE-klausul til filtrering af data

Vi skal bare oprette en forespørgsel for at kontrollere PName- kolonnen i produkttabellen . I denne forespørgsel brugte vi WHERE -udtrykket og OR -operatoren til at returnere rækker, der overholdt en af ​​de betingelser, der blev angivet.

SQL WHERE-klausul til filtrering af data

Brug af WHERE-klausul i SSMS

Lad os nu bruge WHERE-klausulen i SSMS . Her bruger vi en eksempeldatabase fra Microsoft ved navn AdventureWorks2012. Du kan lære, hvordan du konfigurerer dette ved at følge dette. 

I dette eksempel henter vi posterne under SalesOrderHeader- tabellen.

SQL WHERE-klausul til filtrering af data

For at udføre denne forespørgsel i SSMS skal du blot fremhæve den og klikke på knappen Udfør.

SQL WHERE-klausul til filtrering af data

Uden at bruge WHERE- klausulen returnerer den alle posterne under denne tabel. Som vi kan se, returnerede det 31.465 rækker.

SQL WHERE-klausul til filtrering af data

Lad os sige, at vi vil filtrere disse poster og kun returnere rækkerne med et TerritoryID på 5. Så lad os bruge WHERE- sætningen her til at skabe den betingelse.

SQL WHERE-klausul til filtrering af data

Efter at have udført denne forespørgsel, returnerer den nu 486 rækker i stedet for 31.465. Dette skyldes, at det filtrerede posterne til dem, der kun har TerritoryID5 .

SQL WHERE-klausul til filtrering af data

Lige nu bringer vi stadig alle kolonnerne fra den tabel. Vi kan også begrænse kolonnerne ved at angive de kolonner, vi ønsker at se.

Bare skift * til de specifikke kolonnenavne og udfør forespørgslen. 

SQL WHERE-klausul til filtrering af data

Det vil nu give os de specifikke kolonner, som vi har sat med det samme antal rækker. 

SQL WHERE-klausul til filtrering af data

Lad os nu bruge WHERE- sætningen med en strengværdi . For eksempel ønsker vi at begrænse registreringerne baseret på PurchaseOrderNumber- kolonnens værdi for P014123169936 . Da denne værdi har et bogstav, betragtes den som en streng, selvom der er mange tal med.

SQL WHERE-klausul til filtrering af data

Husk, at når du bruger en strengværdi , skal vi omslutte den med enkelte anførselstegn. Uden de enkelte anførselstegn vises en rød linje, der indikerer, at der er en fejl.

SQL WHERE-klausul til filtrering af data

Resultatet vil så kun give os én række, hvilket betyder, at der kun er én data med det indkøbsordrenummer, vi har angivet.

SQL WHERE-klausul til filtrering af data

WHERE-klausul med OG Operatør og rækkefølge efter søgeord

Lad os have et andet filter, hvor vi vil vælge poster med bestemte ordredatoer. For dette eksempel ønsker vi kun at vælge de poster, hvor ordredatoen er større end eller lig med ' 2014-01-01 ' og mindre end eller lig med ' 2014-03-31 '.

SQL WHERE-klausul til filtrering af data

Vi kan også bruge søgeordet Bestil efter her. For dette eksempel ønsker vi, at dette skal sorteres efter OrderDate i faldende rækkefølge.

SQL WHERE-klausul til filtrering af data

Resultaterne skulle kun vise de poster, der opfyldte de to betingelser, vi har sat.

SQL WHERE-klausul til filtrering af data

Vi kan også genskabe den forespørgsel ved at bruge BETWEEN -operatoren. MELLEM operatoren vælger en værdi inden for et givet område. Så det vil give os de samme resultater, hvis vi gør det på denne måde. 

SQL WHERE-klausul til filtrering af data

WHERE-klausul med OR-operatør for flere tilstande

I dette eksempel har vi flere betingelser ved hjælp af OR- operatoren. Vi ønsker at vælge rækkerne med enten 5, 6 eller 7 som deres område-id.

SQL WHERE-klausul til filtrering af data

Resultaterne skulle vise alle de poster, der opfyldte en af ​​de betingelser, vi har sat. For dette eksempel returnerede det 7.225 rækker.

SQL WHERE-klausul til filtrering af data

Brug af funktioner med WHERE-klausul

Vi kan også bruge funktioner med WHERE -sætningen. For eksempel, i stedet for manuelt at indtaste datoværdien i kolonnen OrderDate , kan vi bruge funktionen ÅR til automatisk at hente alle posterne med en ordredato fra året 2014. 

SQL WHERE-klausul til filtrering af data

Resultatet gav os 11.761 rækker, som er rekorderne for 2014.

SQL WHERE-klausul til filtrering af data


Konklusion

For at opsummere har vi lært, hvordan man bruger WHERE -sætningen i SELECT- sætningen. Igen kan vi også bruge det i UPDATE , DELETE og andre SQL- sætninger. Vi har også lært, hvordan man bruger det til at skabe flere betingelser ved at bruge AND- og OR- operatorerne.

Desuden lærte vi brugen af ​​BETWEEN- operatoren til at vælge mellem en række værdier. Vi kan også bruge WHERE- sætningen med en funktion som YEAR -funktionen. Det er meget vigtigt at bruge WHERE- klausulen for at filtrere nogle poster, som vi ønsker at have. Det er nødvendigt at reducere de poster, der returneres af en forespørgsel, for at filtrere de unødvendige data fra, som vi ikke har brug for. 

Alt det bedste,

Hafiz


Hvad er Power Query & M Language: En detaljeret oversigt

Hvad er Power Query & M Language: En detaljeret oversigt

Denne vejledning giver et overblik over Power Query Editor og M-sproget inde på LuckyTemplates-skrivebordet.

Opret en sideinddelt rapport: Tilføjelse af tekster og billeder

Opret en sideinddelt rapport: Tilføjelse af tekster og billeder

Lær, hvordan du opretter en sideinddelt rapport, tilføjer tekster og billeder og derefter eksporterer din rapport til forskellige dokumentformater.

SharePoint Automate-funktionen | En introduktion

SharePoint Automate-funktionen | En introduktion

Lær, hvordan du bruger SharePoint-automatiseringsfunktionen til at skabe arbejdsgange og hjælpe dig med at mikrostyre SharePoint-brugere, -biblioteker og -lister.

Løs en dataanalyseudfordring med LuckyTemplates Accelerator

Løs en dataanalyseudfordring med LuckyTemplates Accelerator

Udvid dine rapportudviklingsevner ved at deltage i en dataanalyseudfordring. Acceleratoren kan hjælpe dig med at blive LuckyTemplates-superbruger!

Løbende totaler i LuckyTemplates ved hjælp af DAX

Løbende totaler i LuckyTemplates ved hjælp af DAX

Lær, hvordan du beregner løbende totaler i LuckyTemplates ved hjælp af DAX. Løbende totaler giver dig mulighed for ikke at blive fanget af et individuelt resultat.

LuckyTemplates Dax-variabler er konstante: Hvad betyder det?

LuckyTemplates Dax-variabler er konstante: Hvad betyder det?

Forstå konceptet med variabler i DAX i LuckyTemplates og betydningen af ​​variabler for, hvordan dine mål beregnes.

LuckyTemplates hældningsdiagram: en oversigt

LuckyTemplates hældningsdiagram: en oversigt

Lær mere om det brugerdefinerede visuelle kaldet LuckyTemplates Slope-diagrammet, som bruges til at vise stigning/fald for en enkelt eller flere metrics.

LuckyTemplates farvetemaer til ensartede visualiseringer

LuckyTemplates farvetemaer til ensartede visualiseringer

Opdag farvetemaerne i LuckyTemplates. Disse er afgørende for, at dine rapporter og visualiseringer kan se ud og fungere problemfrit.

Beregning af gennemsnit i LuckyTemplates: Isolering af resultater på ugedage eller weekender ved hjælp af DAX

Beregning af gennemsnit i LuckyTemplates: Isolering af resultater på ugedage eller weekender ved hjælp af DAX

Beregning af et gennemsnit i LuckyTemplates kan gøres på mange måder for at give dig præcise oplysninger til dine virksomhedsrapporter.

LuckyTemplates tema | LuckyTemplates Desktop Standard Theming

LuckyTemplates tema | LuckyTemplates Desktop Standard Theming

Lad os dykke ned i Standard LuckyTemplates-temaer og gennemgå nogle af de funktioner, der er indbygget i selve LuckyTemplates Desktop-applikationen.