SQL Wildcard Search

SQL Wildcard Search

Wildcard -tegn er spesialtegn som fungerer som plassholdere for å representere en eller flere verdier. De er instrumentelle når du søker etter spesifikke mønstre i tekst- eller strengtyper.

I SQL spiller jokertegn en essensiell rolle da de gjør deg i stand til å utføre et "uklar" søk etter matchende verdier uten å vite den nøyaktige verdien.

I denne artikkelen vil vi utforske forskjellige jokertegn i standard SQL. Husk at implementeringen kan variere avhengig av databasemotoren din.

Standard SQL Wildcard -tegn

Det er to typer jokertegn som støttes i standard SQL:

Karakter Beskrivelse
% (prosent tegn) Match null eller flere tegn
_ (Underscore -tegn) Match en hvilken som helst enkelt karakter

Merk: Selv om alle databasemotorer støtter de tidligere nevnte jokertegnene, bruker MS Access en stjerne (*) for å representere null eller flere tegn.

Bruke SQL Wildcard -operatører

Vi bruker lignende klausul for å søke etter matchende mønstre ved hjelp av jokertegn. I noen tilfeller kan du finne Ilike-leddet, en case-ufølsom versjon av lignende operatør.

Eksempel Bruk i

For å søke etter alle brukerne hvis navn begynner med AA, kan vi for eksempel utføre en spørring som vist nedenfor:

velg kolonne_navn fra tabell_navn der navn som '%aa';

Den forrige spørringen skal søke i den spesifiserte tabellen etter alle matchende poster hvis navn starter med AA.

Et eksempel på resultatet vises nedenfor:

Aabid
Aadeep
Aadesh
Aadam
Aaron

Du kan også bruke Ilike -operatøren, som vil matche søket uten hensyn til foringsrøret.

Velg kolonne_navn fra tabell_navn der navn ilike '%aa';
-- Aabid
-- Aadeep
-- Aadesh
-- Aadam
-- Aaron

Merk: Alle databasemotorer støtter kanskje ikke Ilike -operatøren.

Du kan også søke hvis en streng inneholder en spesifikk substring ved å kjøre spørringen som:

Velg kolonne_navn (er) fra tabellnavn der navn som '%sol%';

I forrige syntaks vil SQL returnere alle strengene som inneholder Substring Sun.

Merk: Bruk den forrige funksjonen med forsiktighet. Det kan pådra seg betydelige ytelsesstraffer i databasen din, spesielt på et stort datasett.

For å søke hvis en streng ender med et spesifikt tegn eller substring, kjør følgende kommando:

Velg kolonne_navn (er) fra tabellnavn hvor navn som '%.com ';

Den forrige kommandoen skal returnere alle de matchende strengene som ender med .com

Eksempel Bruk II

I noen tilfeller kan det være lurt å søke etter en matchende karakter. I dette tilfellet kan du bruke et understreker jokertegn som følger:

Velg kolonne_navn (er) fra tabellnavn der navn som '_e%r%';

Det forrige spørringen skal søke etter kamper med en enkelt startkarakter.

Her er et eksempel resultat:

Peter

SQL -negasjon

Selv om lignende og Ilike -operatøren er ypperlige til å søke etter matchende poster, kan det være lurt å jobbe med poster som ikke samsvarer med det spesifiserte jokertegnsøket.

For det kan du negere resultatet ditt ved å stille tilstanden som ikke som eller ikke Ilike som vist nedenfor:

Velg kolonne_navn fra tabell_navn der navn ikke liker '%aa';

I dette tilfellet bør den forrige kommandoen returnere alle andre resultater bortsett fra den som starter med AA.

Konklusjon

Denne artikkelen utforsket ved hjelp av og jobbet med jokertegnoperatører i standard SQL. Som nevnt kan noen databasemotorer implementere flere eller færre jokertegn. Sjekk dokumentasjonen for at motoren din skal lære mer. Vi håper du fant denne artikkelen nyttig. Sjekk de andre Linux -hint -artiklene for flere tips og opplæringsprogrammer.