Jokertegn i SQL - Lær syntaks og eksempler på SQL Wildcard

Indholdsfortegnelse:

Anonim

Oversigt over Wildcard i SQL

Et jokertegn i SQL udfører jobbet med at udskifte i en streng, nul til et hvilket som helst antal tegn. Normalt kan disse jokertegn findes, når de bruges med SQL-operatoren LIKE. Dette er en operatør, der ofte bruges i WHERE-klausulen i SQL, til at jage efter et bestemt arrangement af tegn.

Wildcards har et lignende mål som for regulære udtryk. Et jokertegn er et erstatningstegn, der bruges til at erstatte specifikke andre tegn eller tegn i den streng. Disse jokertegn er fordelagtige, når vi vil udføre en hurtig søgning i databasen.

Vi har to almindelige jokertegn i SQL. Procentsymbolet betyder nul, et eller et hvilket som helst antal tegn. Understregssymbolet angiver et enkelt tegn, enten et bogstav eller et tal. Disse skilte kan kombineres i flere arrangementer. Vi har også (charlist), (charlist) og (! Charlist), som kan bruges i både SQL og MS Access.

Vi vil se på disse jokertegn i detaljer sammen med et par andre nyttige jokertegn.

WildcardBeskrivelseEksempel
Procenttegn:%Dette jokertegn matcher nul eller flere tegnha% finder ha, hat, glad og ske
Undercore: _Dette jokertegn matcher kun en bestemt enkelt karakterp_t finde pot, pit og put
Firkantede konsoller: ()Dette jokertegn matcher en solo karakter, der er angivet i parentesernep (oi) t finde pot og pit, men ikke sat
Caret: ^Dette jokertegn matcher tegn, der ikke findes i beslaget efter dette symbolp (oi) t finder put, men ikke pot og pit

Lad os bemærke, at MS Access bruger tegnets asterisk-symbol (*) for jokertegnet i stedet for procent-symbolet (%) jokertegnet for at matche nul eller flere tegn, og det bruger tegnspørgsmærket (?) For jokertegnet i stedet for understregningen af ​​wildcard-tegnet for at repræsentere en enkelt karakter.

Syntaks af SQL Wildcards

Lad os se på antallet af måder, som Wildcard-tegnet '%' og '_' kan skrives på:

SELECT FROM table_name
WHERE column LIKE 'AAAA%'

Eller

SELECT FROM table_name
WHERE column LIKE '%AAAA%'

Eller

SELECT FROM table_name
WHERE column LIKE '_AAAA'

Eller

SELECT FROM table_name
WHERE column LIKE 'AAAA_'

Eller

SELECT FROM table_name
WHERE column LIKE '_ AAAA _'

AAAA% hjælper os med at kigge efter alle strenge, der begynder med AAAA og slutter der eller slutter med et andet enkelt tegn eller mere end et enkelt tegn.

% AAAA% hjælper os med at kigge efter alle strenge, der begynder med et hvilket som helst antal tegn, men som indeholder strengen AAAA imellem og slutter med et hvilket som helst antal tegn fra 0 til uendelig.

_AAAA hjælper os med at kigge efter alle strenge, der begynder med et enkelt særpræg og slutter med strengen AAAA.

AAAA_ hjælper os med at kigge efter alle strenge, der begynder med AAAA-mønster og slutter med et enkelt særpræg.

_AAAA_ hjælper os med at kigge efter alle strenge, der begynder med et tydeligt tegn, der indeholder mønsteret AAAA imellem og slutter med et enkelt tydeligt tegn.

Eksempler på hver jokertegn i SQL

Her er nogle af wildcard-karaktereksemplerne givet nedenfor

1) Arbejde med% Wildcard

Med dette eksempel kan vi vælge alle ansatte i en by, der begynder med “the”:

SELECT * FROM Employees
WHERE City LIKE 'the%';

2) Arbejde med _ Wildcard

Med dette eksempel kan vi vælge alle ansatte i en by, der starter med en enkelt karakter, men slutter med "elhi":

SELECT * FROM Employees
WHERE City LIKE '_elhi';

Lad os se på et andet eksempel, hvor vi kan vælge Medarbejdere i byen, hvis navn starter med “B”, efterfulgt af et enkelt særpræg, efterfulgt af “r”, efterfulgt af et enkelt særpræg, efterfulgt af “i”:

SELECT * FROM Employees
WHERE City LIKE 'B_r_in';

3) Kombination af% og _ Wildcard

Vi kan kombinere begge jokertegn for at optimere vores søgeproces.

Med dette eksempel kan vi finde en hvilken som helst streng, der har 'a' i den anden position.

WHERE StringName LIKE '_a%'

Med dette eksempel kan vi finde en hvilken som helst streng, der begynder med 'x' og har længden på mindst tre tegn.

WHERE StringName LIKE 'x_%_%'

Med dette eksempel kan vi finde en hvilken som helst streng, der begynder med 'x' og slutter med 'y', med mindst et tegn imellem.

WHERE StringName LIKE 'x%_y'

4) Arbejde med () jokertegn

Med dette eksempel kan vi vælge alle ansatte i en by, hvis navn begynder med enten "a", "b" eller "c".

SELECT * FROM Employees
WHERE City LIKE '(abc)%';

Vi kan skrive det samme eksempel på en anden måde ved at bruge bindestregsymbolet (-). Denne erklæring vil også vælge alle ansatte i en by, hvis navn begynder med enten "a", "b" eller "c". Det kan skrives som følger:

>SELECT * FROM Employees
WHERE City LIKE '(ac)%';

5) Arbejde med (!) Jokertegn

Med dette eksempel kan vi vælge alle ansatte i en by, hvis navn IKKE begynder med hverken "a", "b" eller "c".

SELECT * FROM Employees
WHERE City LIKE '(!abc)%';

Denne erklæring kan også skrives som følger:

SELECT * FROM Employees
WHERE City NOT LIKE '(abc)%';

Konklusion

I denne SQL Wildcard-artikel har vi set på alle jokertegnene i SQL. Desuden kiggede vi på forskellige eksempler på SQL Wildcard-tegn for at give os mere forståelse og klarhed.

Afslutningsvis udfører wildcard-tegn lignende arbejde som med almindelige udtryk. Vi kan kombinere flere jokertegn sammen i en solo-streng for at opnå bedre søgeresultater og resultater. Der kan være et par databaser som MS Access, der kan bruge et separat SQL-jokertegn til en lignende funktion.

Anbefalede artikler

Dette er en guide til Wildcard i SQL. Her diskuterer vi syntaks af SQL Wildcards med eksemplerne for hver jokertegn. Du kan også se på den følgende artikel for at lære mere -

  1. SQL Views
  2. SQL-styringsværktøjer
  3. Hvad er MySQL?
  4. Introduktion til MySQL