PostgreSQL LIKE, Not Like, Wildcards (%, _ ) Eksempler


PostgreSQL LIKE operator hjælper os med at matche tekstværdier mod mønstre ved hjælp af jokertegn. Det er muligt at matche søgeudtrykket med mønsterudtrykket.

Hvis der opstår et match, LIKE operator returnerer sandt. Ved hjælp af LIKE operator, er det muligt at bruge jokertegn i WHERE-sætningen af ​​SELECT-, UPDATE-, INSERT- eller DELETE-sætninger.

Vilde kort

Der er kun to jokertegn, der kan bruges sammen med

  • Procenttegn (%)
  • Understregning (_)

Procenttegnet (%) bruges til at repræsentere nul, et eller mange tegn eller numbers.

Understregnings-jokertegnet (_) bruges til at repræsentere ét tegn eller tal. Disse symboler kan også kombineres. Hvis LIKE operator ikke bruges sammen med disse to tegn, vil det virke som lige operathor.

Syntaks

Her er syntaksen for LIKE operator:

expression LIKE pattern [ ESCAPE 'escape-character' ]

Udtrykket er et tegnudtryk som en kolonne eller et felt.

Mønsteret er et karakterudtryk med mønstertilpasning.

Escape-tegnet er en valgfri parameter. Det giver mulighed for at teste bogstavelige forekomster af jokertegn såsom % og _. Hvis det ikke er angivet, vil \ blive brugt som escape-tegn.

Bruger % jokertegn

Som vi sagde tidligere, matcher %-tegnet nul, et eller flere tegn eller numbers. Overvej folloenwing bord:

Bestil:

Bruger % jokertegn

Vi vil have bogen, hvis navn er som "Lear..." for at få det resultat, vi kan køre folloenwing kommando:

SELECT *
FROM
   Book
WHERE
   name LIKE 'Lear%';

Dette vil returnere folloenwing:

Bruger % jokertegn

Bogen blev fundet.

Lad os søge efter en bog "af" i dens navn:

SELECT *
FROM
   Book
WHERE
   name LIKE '%by%';

Dette vil returnere folloenwing:

Bruger % jokertegn

Bruger jokertegn _

Som vi sagde tidligere, repræsenterer tegnet _ ét tegn eller tal. Den kan bruges som vist nedenfor:

SELECT *
FROM
   Book
WHERE
   name LIKE '_earn%';

Dette returnerer folloenwing:

Bruger jokertegn _

Her er et andet eksempel:

SELECT *
FROM
   Book
WHERE
   name LIKE '%Beginner_';

Dette returnerer folloenwing:

Bruger jokertegn _

Bruger NOT OperaTor

Når LIKE operator er kombineret med NOT operator, returneres enhver række, der ikke matcher søgemønsteret. For for eksempel at se en bog, hvis navn ikke begynder med "post", kan vi køre folloenwing kommando:

SELECT *
FROM
   Book
WHERE
  name NOT LIKE 'Post%';

Dette returnerer folloenwing:

Bruger NOT OperaTor

Kun én bog opfyldte søgebetingelsen. Lad os se listen over bøgers navn, der ikke har et ord "Made":

SELECT *
FROM
   Book
WHERE
  name NOT LIKE '%Made%';

Dette returnerer folloenwing:

Bruger NOT OperaTor

3 rækker opfyldte søgebetingelsen.

Bruger pgAdmin

Lad os nu se, hvordan handlingerne kan udføres ved hjælp af pgAdmin.

Bruger % jokertegn

Trin 1) Log ind på din pgAdmin-konto.

Trin 2)

  1. Fra navigationslinjen til venstre - Klik på Databaser.
  2. Klik på Demo.

Brug af pgAdmin med % jokertegn

Trin 3) Indtast forespørgslen i forespørgselseditoren:

SELECT *
FROM
   Book
WHERE
   name LIKE 'Lear%';

Trin 4) Klik på knappen Udfør.

Brug af pgAdmin med % jokertegn

Det burde returnere folloenwing:

Brug af pgAdmin med % jokertegn

Sådan søger du efter en bog "af" i dens navn:

Trin 1) Skriv following kommando i forespørgselseditoren:

SELECT *
FROM
   Book
WHERE
   name LIKE '%by%';

Trin 2) Klik på knappen Udfør.

Brug af pgAdmin med % jokertegn

Det burde returnere folloenwing:

Brug af pgAdmin med % jokertegn

Bruger jokertegn _

Trin 1) Log ind på din pgAdmin-konto.

Trin 2)

  1. Fra navigationslinjen til venstre - Klik på Databaser.
  2. Klik på Demo.

Brug af pgAdmin med jokertegn _

Trin 3) Indtast forespørgslen i forespørgselseditoren:

SELECT *
FROM
   Book
WHERE
   name LIKE '_earn%';

Trin 4) Klik på knappen Udfør.

Brug af pgAdmin med jokertegn _

Det burde returnere folloenwing:

Brug af pgAdmin med jokertegn _

Trin 5) For at køre det andet eksempel:

  1. Skriv following forespørgsel i forespørgselseditoren:
    SELECT *
    FROM
       Book
    WHERE
       name LIKE '%Beginner_';
    
  2. Klik på knappen Udfør.

Brug af pgAdmin med jokertegn _

Det burde returnere folloenwing:

Brug af pgAdmin med jokertegn _

Bruger NOT OperaTor

Trin 1) Log ind på din pgAdmin-konto.

Trin 2)

  1. Fra navigationslinjen til venstre - Klik på Databaser.
  2. Klik på Demo.

Bruger NOT Operator i pgAdmin

Trin 3) For at se alle bøger, hvis navne ikke starter med "Send", skal du skrive forespørgslen i forespørgselseditoren:

SELECT *
FROM
   Book
WHERE
  name NOT LIKE 'Post%';

Trin 4) Klik på knappen Udfør.

Bruger NOT Operator i pgAdmin

Det burde returnere folloenwing:

Bruger NOT Operator i pgAdmin

Bruger NOT Operator i pgAdmin

For at se listen over bøger, hvis navne ikke har ordet "Made":

Trin 1) Skriv following forespørgsel i forespørgselseditoren:

SELECT *
FROM
   Book
WHERE
  name NOT LIKE '%Made%';

Trin 2) Klik på knappen Udfør.

Bruger NOT Operator i pgAdmin

Det burde returnere folloenwing:

Bruger NOT Operator i pgAdmin

Resumé

  • PostgreSQL LIKE bruges til at matche tekstværdier mod mønstre ved hjælp af jokertegn.
  • LIKE-klausulen giver os mulighed for at bruge jokertegn i SELECT, UPDATE, INSERT eller DELETE sætninger.
  • Jokertegnet % matcher en eller flere værdier. Værdierne kan være numbers eller tegn.
  • Jokertegnet _ matcher nøjagtigt én værdi. Værdien kan være et tegn eller et tal.
  • LIKE operator kan kombineres med NOT operator for at returnere en række, der ikke matcher søgemønsteret.

Download databasen brugt i denne vejledning