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


Ocuco PostgreSQL LIKE-operatoren hjelper oss å matche tekstverdier mot mønstre ved hjelp av jokertegn. Det er mulig å matche søkeuttrykket med mønsteruttrykket.

Hvis en match oppstår, returnerer LIKE-operatoren sann. Ved hjelp av LIKE-operatoren er det mulig å bruke jokertegn i WHERE-leddet til SELECT-, UPDATE-, INSERT- eller DELETE-setninger.

Ville kort

Det er bare to jokertegn som kan brukes sammen med

  • Prosenttegn (%)
  • Understrek (_)

Prosenttegnet (%) brukes til å representere null, ett eller mange tegn eller tall.

Understreket jokertegnet (_) brukes til å representere ett tegn eller tall. Disse symbolene kan også kombineres. Hvis LIKE-operatoren ikke brukes sammen med disse to tegnene, vil den fungere som lik-operatoren.

syntax

Her er syntaksen for LIKE-operatoren:

expression LIKE pattern [ ESCAPE 'escape-character' ]

Uttrykket er et tegnuttrykk som en kolonne eller et felt.

Mønsteret er et karakteruttrykk med mønstertilpasning.

Escape-tegnet er en valgfri parameter. Den tillater testing av bokstavelige forekomster av jokertegn som % og _. Hvis det ikke er oppgitt, vil \ bli brukt som escape-tegnet.

Bruker jokertegn %

Som vi sa tidligere, samsvarer %-tegnet med null, ett eller flere tegn eller tall. Tenk på følgende tabell:

Bok:

Bruker jokertegn %

Vi vil at boken hvis navn er som "Lear ..." skal få det resultatet, vi kan kjøre følgende kommando:

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

Dette vil returnere følgende:

Bruker jokertegn %

Boken ble funnet.

La oss søke etter en bok "av" i navnet:

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

Dette vil returnere følgende:

Bruker jokertegn %

Bruker jokertegn _

Som vi sa tidligere, representerer _-tegnet ett tegn eller tall. Den kan brukes som vist nedenfor:

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

Dette returnerer følgende:

Bruker jokertegn _

Her er et annet eksempel:

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

Dette returnerer følgende:

Bruker jokertegn _

Bruker IKKE Operator

Når LIKE-operatoren kombineres med NOT-operatoren, returneres enhver rad som ikke samsvarer med søkemønsteret. For eksempel, for å se en bok hvis navn ikke begynner med "post", kan vi kjøre følgende kommando:

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

Dette returnerer følgende:

Bruker IKKE Operator

Bare én bok oppfylte søkebetingelsen. La oss se listen over boknavn som ikke har et ord "Laget":

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

Dette returnerer følgende:

Bruker IKKE Operator

3 rader oppfylte søkebetingelsen.

Bruker pgAdmin

La oss nå se hvordan handlingene kan utføres ved hjelp av pgAdmin.

Bruker jokertegn %

Trinn 1) Logg på pgAdmin-kontoen din.

Trinn 2)

  1. Fra navigasjonslinjen til venstre klikker du på Databaser.
  2. Klikk på Demo.

Bruker pgAdmin med % jokertegn

Trinn 3) Skriv inn søket i spørringsredigeringsprogrammet:

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

Trinn 4) Klikk på Utfør-knappen.

Bruker pgAdmin med % jokertegn

Den skal returnere følgende:

Bruker pgAdmin med % jokertegn

Slik søker du etter en bok "av" i navnet:

Trinn 1) Skriv inn følgende kommando i spørringsredigeringsprogrammet:

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

Trinn 2) Klikk på Utfør-knappen.

Bruker pgAdmin med % jokertegn

Den skal returnere følgende:

Bruker pgAdmin med % jokertegn

Bruker jokertegn _

Trinn 1) Logg på pgAdmin-kontoen din.

Trinn 2)

  1. Fra navigasjonslinjen til venstre klikker du på Databaser.
  2. Klikk på Demo.

Bruke pgAdmin med jokertegn _

Trinn 3) Skriv inn søket i spørringsredigeringsprogrammet:

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

Trinn 4) Klikk på Utfør-knappen.

Bruke pgAdmin med jokertegn _

Den skal returnere følgende:

Bruke pgAdmin med jokertegn _

Trinn 5) For å kjøre det andre eksemplet:

  1. Skriv inn følgende spørring i spørringsredigeringsprogrammet:
    SELECT *
    FROM
       Book
    WHERE
       name LIKE '%Beginner_';
    
  2. Klikk på Utfør-knappen.

Bruke pgAdmin med jokertegn _

Den skal returnere følgende:

Bruke pgAdmin med jokertegn _

Bruker IKKE Operator

Trinn 1) Logg på pgAdmin-kontoen din.

Trinn 2)

  1. Fra navigasjonslinjen til venstre klikker du på Databaser.
  2. Klikk på Demo.

Bruker IKKE Operator i pgAdmin

Trinn 3) For å se alle bøker med navn som ikke begynner med «Legg inn», skriv inn søket i søkeredigeringsprogrammet:

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

Trinn 4) Klikk på Utfør-knappen.

Bruker IKKE Operator i pgAdmin

Den skal returnere følgende:

Bruker IKKE Operator i pgAdmin

Bruker IKKE Operator i pgAdmin

For å se listen over bøker hvis navn ikke har ordet "Laget":

Trinn 1) Skriv inn følgende spørring i spørringsredigeringsprogrammet:

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

Trinn 2) Klikk på Utfør-knappen.

Bruker IKKE Operator i pgAdmin

Den skal returnere følgende:

Bruker IKKE Operator i pgAdmin

Sammendrag

  • Ocuco PostgreSQL LIKE brukes til å matche tekstverdier mot mønstre ved hjelp av jokertegn.
  • LIKE-klausulen lar oss bruke jokertegn i VELG, UPDATE, INSERT eller DELETE-setninger.
  • Jokertegnet % samsvarer med én eller flere verdier. Verdiene kan være tall eller tegn.
  • Jokertegnet _ samsvarer med nøyaktig én verdi. Verdien kan være et tegn eller et tall.
  • LIKE-operatoren kan kombineres med NOT-operatoren for å returnere en hvilken som helst rad som ikke samsvarer med søkemønsteret.

Last ned databasen som brukes i denne opplæringen