SQL WHERE-klausul for filtrering av data

I denne opplæringen vil vi diskutere hva SQL WHERE- klausulen er og hvordan du bruker den. Vi vil også snakke om flere forhold ved å bruke AND- og OR- operatorer. 

SQL WHERE -leddet er for filtrering av data eller poster. Den brukes til å opprette en betingelse for å trekke ut bare de nødvendige postene som trengs. 

Bortsett fra å bruke WHERE- setningen i SELECT- setningen, kan vi også bruke den med UPDATE , DELETE og andre SQL- setninger. For denne opplæringen vil vi imidlertid bare bruke den i SELECT- setningen.

Innholdsfortegnelse

Enkelt valg ved hjelp av SQL WHERE-klausul

Uten å bruke WHERE- leddet i en SELECT- setning, vil den returnere alle radene fra en bestemt tabell.

SQL WHERE-klausul for filtrering av data

For dette eksemplet ønsker vi bare å få dataene med en Gadget- kategori.

SQL WHERE-klausul for filtrering av data


Så vi må bruke WHERE- klausulen for å begrense resultatene. I dette eksemplet opprettet vi en betingelse om at den skulle sjekke Kategori- kolonnen og bare returnere postene hvis Kategori er Gadgets .

SQL WHERE-klausul for filtrering av data

Merk at når du bruker en streng, må vi omslutte den med enkle anførselstegn ( ' ' ). 

Når du bruker tall eller heltall, trenger vi ikke bruke enkle anførselstegn. For eksempel ønsker vi å hente postene der prisen er mindre enn eller lik 30.

Så, vi trenger bare å lage en spørring der den skal sjekke Pris- kolonnen og returnere disse radene med en verdi på 30 eller mindre enn 30. Som du kan se, har vi heller ikke satt tallet i enkle anførselstegn fordi det er et heltall.

SQL WHERE-klausul for filtrering av data

SQL WHERE-klausul med AND-operatøren

Vi kan også bruke WHERE- leddet med flere kolonner sammen med AND- og OR -operatorene.

AND- operatoren vil fungere hvis begge forholdene er SANN . Så det brukes til å få poster der flere forhold er SANN .

For eksempel, i dette scenariet, vil vi ha postene der produsenten er GizmoWorks og prisen er mindre enn 20.  

SQL WHERE-klausul for filtrering av data

Vi har opprettet flere betingelser med WHERE- leddet sammen med AND- operatoren som vist på bildet.

SQL WHERE-klausul for filtrering av data

På bordet vårt har vi 2 rader med en GizmoWorks-produsent. Prisen på den andre raden er imidlertid mer enn 20. Derfor vil resultatet bare returnere raden som returnerer til de 2 betingelsene vi har satt. 

SQL WHERE-klausul for filtrering av data

SQL WHERE-klausul med OR-operatøren

OR- operatøren betyr at den skal returnere poster hvis en av betingelsene er sanne. Så hvis AND bare returnerer en post der begge eller alle betingelsene er sanne, vil bruk av OR- operator returnere en post selv om bare én betingelse returnerer sann. 

La oss for eksempel si at vi ønsker å hente postene der produktnavnet er enten SingleTouch eller MultiTouch .

SQL WHERE-klausul for filtrering av data

Vi trenger bare å lage en spørring for å sjekke PName- kolonnen i produkttabellen . I denne spørringen brukte vi WHERE -leddet og OR -operatoren for å returnere rader som overholdt en av betingelsene som ble satt.

SQL WHERE-klausul for filtrering av data

Bruke WHERE-klausul i SSMS

La oss nå bruke WHERE-klausulen i SSMS . Her bruker vi en eksempeldatabase fra Microsoft som heter AdventureWorks2012. Du kan lære hvordan du setter opp dette ved å følge dette. 

For dette eksemplet henter vi postene under SalesOrderHeader- tabellen.

SQL WHERE-klausul for filtrering av data

For å utføre denne spørringen i SSMS , bare marker den og klikk på utfør-knappen.

SQL WHERE-klausul for filtrering av data

Uten å bruke WHERE- klausulen, vil den returnere alle postene under denne tabellen. Som vi kan se, returnerte den 31 465 rader.

SQL WHERE-klausul for filtrering av data

La oss si at vi ønsker å filtrere disse postene og bare returnere radene med en TerritoryID på 5. Så la oss bruke WHERE -klausulen her for å lage den betingelsen.

SQL WHERE-klausul for filtrering av data

Etter å ha utført den spørringen, vil den nå returnere 486 rader i stedet for 31 465. Dette er fordi den filtrerte postene til de som bare har TerritoryID5 .

SQL WHERE-klausul for filtrering av data

Akkurat nå henter vi fortsatt alle kolonnene fra den tabellen. Vi kan også begrense kolonnene ved å spesifisere kolonnene vi ønsker å se.

Bare endre * til de spesifikke kolonnenavnene og utfør spørringen. 

SQL WHERE-klausul for filtrering av data

Det vil nå gi oss de spesifikke kolonnene som vi har satt med samme antall rader. 

SQL WHERE-klausul for filtrering av data

La oss nå bruke WHERE- leddet med en strengverdi . For eksempel ønsker vi å begrense postene basert på PurchaseOrderNumber- kolonneverdien til P014123169936 . Siden denne verdien har en bokstav, regnes den som en streng selv om det er mange tall med den.

SQL WHERE-klausul for filtrering av data

Husk at når du bruker en strengverdi , må vi omslutte den med enkle anførselstegn. Uten de enkle anførselstegnene vises en rød linje som indikerer at det er en feil.

SQL WHERE-klausul for filtrering av data

Resultatet vil da bare gi oss én rad, noe som betyr at det kun er én data med innkjøpsordrenummeret vi har angitt.

SQL WHERE-klausul for filtrering av data

WHERE-klausul med OG operatør og rekkefølge etter nøkkelord

La oss ha et annet filter der vi ønsker å velge poster med bestemte bestillingsdatoer. For dette eksemplet ønsker vi bare å velge postene der bestillingsdatoen er større enn eller lik ' 2014-01-01 ' og mindre enn eller lik ' 2014-03-31 '.

SQL WHERE-klausul for filtrering av data

Vi kan også bruke søkeordet Bestill etter her. For dette eksemplet ønsker vi at dette skal sorteres etter OrderDate i synkende rekkefølge.

SQL WHERE-klausul for filtrering av data

Resultatene skal bare vise postene som oppfylte de to betingelsene vi har satt.

SQL WHERE-klausul for filtrering av data

Vi kan også gjenskape den spørringen ved å bruke BETWEEN- operatoren. BETTWEEN- operatoren velger en verdi innenfor et gitt område. Så det vil gi oss de samme resultatene hvis vi gjør det på denne måten. 

SQL WHERE-klausul for filtrering av data

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

I dette eksemplet har vi flere betingelser som bruker OR- operatoren. Vi ønsker å velge radene med enten 5, 6 eller 7 som territorium-ID.

SQL WHERE-klausul for filtrering av data

Resultatene skal vise alle postene som oppfylte en av betingelsene vi har satt. For dette eksemplet returnerte det 7 225 rader.

SQL WHERE-klausul for filtrering av data

Bruke funksjoner med WHERE-klausul

Vi kan også bruke funksjoner med WHERE -leddet. For eksempel, i stedet for å legge inn datoverdien for OrderDate- kolonnen manuelt, kan vi bruke YEAR- funksjonen til å automatisk hente alle postene med en ordredato for året 2014. 

SQL WHERE-klausul for filtrering av data

Resultatet ga oss 11 761 rader som er rekorden for 2014.

SQL WHERE-klausul for filtrering av data


Konklusjon

For å oppsummere, har vi lært hvordan du bruker WHERE- leddet i SELECT- setningen. Igjen, vi kan også bruke det i UPDATE , DELETE , og andre SQL- setninger. Vi har også lært hvordan du bruker den til å skape flere forhold ved å bruke AND- og OR- operatorene.

Dessuten lærte vi bruken av BETWEEN- operatoren for å velge mellom en rekke verdier. Vi kan også bruke WHERE- leddet med en funksjon som YEAR -funksjonen. Å bruke WHERE- klausulen er veldig viktig for å filtrere noen poster vi ønsker å ha. Det er nødvendig å redusere postene som returneres av en spørring for å filtrere ut unødvendige data som vi ikke trenger. 

Beste ønsker,

Hafiz


Hva er Power Query & M Language: En detaljert oversikt

Hva er Power Query & M Language: En detaljert oversikt

Denne opplæringen gir en oversikt over Power Query Editor og M-språket på LuckyTemplates-skrivebordet.

Lag en paginert rapport: Legge til tekster og bilder

Lag en paginert rapport: Legge til tekster og bilder

Lær hvordan du lager en paginert rapport, legger til tekster og bilder og deretter eksporterer rapporten til ulike dokumentformater.

SharePoint Automate-funksjonen | En introduksjon

SharePoint Automate-funksjonen | En introduksjon

Lær hvordan du bruker SharePoint-automatiseringsfunksjonen til å lage arbeidsflyter og hjelpe deg med å mikroadministrere SharePoint-brukere, -biblioteker og -lister.

Løs en dataanalyseutfordring med LuckyTemplates Accelerator

Løs en dataanalyseutfordring med LuckyTemplates Accelerator

Utvid rapportutviklingsferdighetene dine ved å bli med i en dataanalyseutfordring. Akseleratoren kan hjelpe deg å bli en LuckyTemplates-superbruker!

Løpende totaler i LuckyTemplates ved hjelp av DAX

Løpende totaler i LuckyTemplates ved hjelp av DAX

Lær hvordan du beregner løpende totaler i LuckyTemplates ved hjelp av DAX. Løpende totaler lar deg ikke bli fanget opp i et individuelt resultat.

LuckyTemplates Dax-variabler er konstante: Hva betyr dette?

LuckyTemplates Dax-variabler er konstante: Hva betyr dette?

Forstå konseptet med variabler i DAX i LuckyTemplates og implikasjonene av variabler for hvordan målene dine beregnes.

LuckyTemplates Slope Chart: En oversikt

LuckyTemplates Slope Chart: En oversikt

Lær mer om det tilpassede visuelle bildet kalt LuckyTemplates Slope-diagram, som brukes til å vise økning/reduksjon for en enkelt eller flere beregninger.

LuckyTemplates fargetemaer for enhetlige visualiseringer

LuckyTemplates fargetemaer for enhetlige visualiseringer

Oppdag fargetemaene i LuckyTemplates. Disse er avgjørende for at rapportene og visualiseringene dine skal se ut og fungere sømløst.

Beregne gjennomsnitt i LuckyTemplates: Isolere ukedag- eller helgeresultater ved hjelp av DAX

Beregne gjennomsnitt i LuckyTemplates: Isolere ukedag- eller helgeresultater ved hjelp av DAX

Å beregne et gjennomsnitt i LuckyTemplates kan gjøres på mange måter for å gi deg nøyaktig informasjon for bedriftsrapportene dine.

LuckyTemplates Theming | LuckyTemplates Desktop Standard Theming

LuckyTemplates Theming | LuckyTemplates Desktop Standard Theming

La oss fordype oss i Standard LuckyTemplates-tema, og gjennomgå noen av funksjonene som er innebygd i selve LuckyTemplates Desktop-applikasjonen.