Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

I denne blog vil vi diskutere, hvordan man filtrerer i SQL. Vi vil forklare og vise nogle eksempler, der bruger filtreringsbetingelser såsom IN, NOT IN, LIKE og NOT LIKE .

Disse filtreringsbetingelser bruges til at filtrere outputtet fra dataene. I stedet for at vælge dem ved hjælp af flere kommandolinjer, vil det være lettere for dig at få adgang til dataene.

Indholdsfortegnelse

Brug af IN og IKKE IN-operatører til at filtrere data i SQL

I dette eksempel får vi dataene fra ID 1, 5 eller 7. De fleste vil bruge OR-betingelser .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Hvis du vil have data fra flere ID'er, skal du skrive flere ELLER-betingelser. Du kan dog bruge IN-operatoren til at få de data, du ønsker, i stedet for at bruge OR-betingelser mange gange.

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Brug af denne filtreringsbetingelse vil give os det samme output, som er dataene fra ID'erne 1, 5 eller 7. Tværtimod, hvis du ønsker at udtrække dataene fra alle undtagen fra ID'erne 1, 5 og 7, ville du mest brug sandsynligvis OR-betingelsen og <> (NOT EQUAL-operator).

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

I stedet for at skrive lange kommandoer, kan vi bruge NOT IN-operatoren .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Med denne filtreringsbetingelse vil du udtrække dataene undtagen id'erne 1, 5 og 7.

Brug af disse betingelser vil spare dig for masser af tid, og det er samtidig en meget bedre måde at skrive på i stedet for at bruge flere OR-betingelser .

Brug LIKE og NOT LIKE-operatører til at filtrere data i SQL

LIKE og NOT LIKE ligner IN og NOT IN operatorerne. I stedet for sig selv vil den få delen af ​​en streng. Husk, at du kan bruge jokertegn eller specialtegn som procent (%) og understregning (_).

% betyder , at det vil matche alle posterne med den givne streng. Hvis vi matcher 86 og %, skal de første to cifre være 86. Så den finder alle værdier, der starter med 86.

Men hvis vi placerer % på begge sider af 86, kan det komme fra et hvilket som helst sted. Det kan komme fra starten, slutningen eller midten. Så den finder alle værdier, der har 86 i starten, midten eller slutningen. 

På den anden side matcher _ kun 1 tegn. Hvis du bruger 86 og _ (86_), vil den lede efter værdier, der har 86 på 1. og 2. position som 860, 861, 862, og så videre og så videre. Hvis du bruger _ og 86 (_86), vil den lede efter værdier med 86 på 2. og 3. position. 

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

I dette eksempel bruger vi LIKE-operatoren til at få de data, der har strengen Mark . Vi skal simpelthen sætte Mark imellem % for at få et output, der indeholder Mark

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

På samme måde, hvis vi ikke ønsker at udtrække de data, der indeholder Mark , kan vi bruge NOT LIKE-operatoren . Sæt derefter Mark imellem %.

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Denne gang vil outputtet ikke indeholde Mark .

Brug af SQL-filtreringsbetingelserne i SSMS

Først åbner vi vores (SQL Server Management Studio).

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Dernæst indlæser vi tabellen, som vi skal bruge. Bemærk, at den database, vi bruger, er adventureworks2012, som kan findes på Microsofts dokumentationswebsted .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Klik derefter på Udfør .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Derefter vil du se outputtet på fanen Resultater.

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Derefter filtrerer vi outputtet baseret på PersonType . Vi bruger kommandoen select distinct . Vi fremhæver kommandoen og klikker på Udfør .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Så vil du se outputtet, der viser PersonType .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Dernæst vil vi udtrække posterne fra PersonType IN eller SP eller SC . Til denne bruger vi OR-betingelsen . Vi fremhæver kommandoen og klikker på udfør .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Du vil så se, at antallet af rækker er 19.254.

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Men i stedet for at bruge OR-betingelsen , bruger vi IN-operatoren . Så vi skriver kommandoen og fremhæver den. Klik derefter på udfør .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Dette vil give os det samme antal rækker, som er 19.254 .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Hvis vi vil udtrække alle data undtagen IN , SP og SC , bruger vi NOT IN-operatoren . Så lad os skrive kommandoen og fremhæve den. Klik derefter på udfør .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Dette vil give os alle data undtagen dem, der er fra IN , SP og SC .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Dernæst bruger vi LIKE-operatoren til at udtrække de data, der indeholder Rob fra kolonnen Fornavn . Lad os bruge kommandoen, fremhæve den og klikke på Udfør .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Som et resultat vil vi se, at outputtet nu indeholder Rob i kolonnen Fornavn . Da vi brugte %, vil det vise alle data, der har strengen Rob .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Til sidst bruger vi NOT LIKE-operatoren . I dette eksempel ønsker vi at udtrække de data, der ikke indeholder Rob . Så vi skriver koden, fremhæver den og klikker derefter på Udfør.

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Dette vil give os det output, der ikke viser nogen post, der indeholder Rob i kolonnen Fornavn .

Filtrer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE

Konklusion

For at opsummere har vi diskuteret, hvordan man filtrerer i SQL ved hjælp af IN, NOT IN, LIKE og NOT LIKE operatorer. Du har lært deres brug og deres forskelle, og i hvilken situation du kan bruge dem.

Disse operatører er mere effektive end at bruge OR-betingelsen . Du kan bruge disse operatorer til at filtrere og udtrække de data, du ønsker fra din database, i stedet for at bruge længere kommandoer, så sørg for at bruge disse filtreringsbetingelser korrekt.

Alt det bedste,

Hafiz


Pipe In R: Tilslutningsfunktioner med Dplyr

Pipe In R: Tilslutningsfunktioner med Dplyr

I denne øvelse lærer du, hvordan du kæder funktioner sammen ved hjælp af dplyr-røroperatoren i programmeringssproget R.

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX fra LuckyTemplates giver dig mulighed for at returnere rangeringen af ​​et specifikt tal i hver tabelrække, der udgør en del af en liste over tal.

Udpakning af LuckyTemplates-temaer og -billeder fra PBIX

Udpakning af LuckyTemplates-temaer og -billeder fra PBIX

Lær, hvordan du adskiller en PBIX-fil for at udtrække LuckyTemplates-temaer og -billeder fra baggrunden og bruge den til at oprette din rapport!

Excel Formler Snydeark: Mellemvejledning

Excel Formler Snydeark: Mellemvejledning

Excel Formler Snydeark: Mellemvejledning

LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det

LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det

LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det

Python i LuckyTemplates: Sådan installeres og konfigureres

Python i LuckyTemplates: Sådan installeres og konfigureres

Lær, hvordan du installerer programmeringssproget Python i LuckyTemplates, og hvordan du bruger dets værktøjer til at skrive koder og vise billeder.

Beregning af dynamiske fortjenestemargener – nem analyse af LuckyTemplates med DAX

Beregning af dynamiske fortjenestemargener – nem analyse af LuckyTemplates med DAX

Lær, hvordan du beregner dynamiske fortjenstmargener ved siden af ​​LuckyTemplates, og hvordan du kan få mere indsigt ved at grave dybere ned i resultaterne.

Sortering af datotabelkolonner i LuckyTemplates

Sortering af datotabelkolonner i LuckyTemplates

Lær, hvordan du sorterer felterne fra kolonner med udvidet datotabel korrekt. Dette er en god strategi at gøre for vanskelige felter.

Find dine topprodukter for hver region i LuckyTemplates ved hjælp af DAX

Find dine topprodukter for hver region i LuckyTemplates ved hjælp af DAX

I denne artikel gennemgår jeg, hvordan du kan finde dine topprodukter pr. region ved hjælp af DAX-beregninger i LuckyTemplates, herunder funktionerne TOPN og CALCUATE.

Junk Dimension: Hvad er det, og hvorfor det er alt andet end junk

Junk Dimension: Hvad er det, og hvorfor det er alt andet end junk

Lær, hvordan du bruger en uønsket dimension til flag med lav kardinalitet, som du ønsker at inkorporere i din datamodel på en effektiv måde.