PostgreSQL LIKE, Not Like, Metamärgid (%, _ ) Näited


. PostgreSQL Operaator LIKE aitab meil sobitada tekstiväärtusi metamärke kasutavate mustritega. Otsinguavaldist on võimalik sobitada mustri avaldisega.

Sobivuse korral tagastab operaator LIKE tõene. Operaatori LIKE abil on võimalik kasutada käskude SELECT, UPDATE, INSERT või DELETE WHERE-klauslis metamärke.

Wild-kaardid

Koos saab kasutada ainult kahte metamärki

  • Protsendimärk (%)
  • Alakriips (_)

Protsendimärki (%) kasutatakse nulli, ühe või mitme märgi või numbri tähistamiseks.

Alakriipsu metamärki (_) kasutatakse ühe märgi või numbri tähistamiseks. Neid sümboleid saab ka kombineerida. Kui märki LIKE ei kasutata koos nende kahe märgiga, toimib see nagu võrdusmärk.

Süntaks

Siin on LIKE-operaatori süntaks:

expression LIKE pattern [ ESCAPE 'escape-character' ]

Avaldis on märgiavaldis nagu veerg või väli.

Muster on tähemärgi avaldis koos mustri sobitamisega.

Paomärk on valikuline parameeter. See võimaldab testida metamärkide (nt % ja _) sõnasõnalisi eksemplare. Kui seda ei anta, kasutatakse paomärgina \.

Kasutatakse % metamärki

Nagu me varem ütlesime, vastab % märk nullile, ühele või mitmele märgile või numbrile. Kaaluge järgmist tabelit:

Raamat:

Kasutatakse % metamärki

Soovime, et raamat, mille nimi on nagu “Õpi…”, saaks selle tulemuse, saame käivitada järgmise käsu:

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

See tagastab järgmise:

Kasutatakse % metamärki

Raamat leiti.

Otsime selle nimest raamatut "poolt":

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

See tagastab järgmise:

Kasutatakse % metamärki

Kasutades metamärki _

Nagu me varem ütlesime, tähistab _ märk ühte märki või numbrit. Seda saab kasutada järgmiselt:

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

See tagastab järgmise:

Kasutades metamärki _

Siin on veel üks näide:

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

See tagastab järgmise:

Kasutades metamärki _

Kasutades EI Operator

Kui operaator LIKE on kombineeritud operaatoriga NOT, tagastatakse rida, mis ei vasta otsingumustrile. Näiteks selleks, et näha raamatut, mille nimi ei alga sõnaga „post”, saame käivitada järgmise käsu:

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

See tagastab järgmise:

Kasutades EI Operator

Ainult üks raamat vastas otsingutingimustele. Vaatame nende raamatute nimede loendit, millel pole sõna "Made":

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

See tagastab järgmise:

Kasutades EI Operator

Otsingutingimusele vastas 3 rida.

pgAdmini kasutamine

Nüüd vaatame, kuidas toiminguid pgAdmini abil saab teha.

Kasutatakse % metamärki

Step 1) Logige sisse oma pgAdmini kontole.

Step 2)

  1. Vasakpoolsel navigeerimisribal klõpsake nuppu Andmebaasid.
  2. Klõpsake Demo.

pgAdmini kasutamine metamärgiga %

Step 3) Sisestage päring päringuredaktorisse:

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

Step 4) Klõpsake nuppu Käivita.

pgAdmini kasutamine metamärgiga %

See peaks tagastama järgmise:

pgAdmini kasutamine metamärgiga %

Raamatu otsimiseks selle nimes "poolt" toimige järgmiselt.

Step 1) Tippige päringuredaktorisse järgmine käsk:

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

Step 2) Klõpsake nuppu Käivita.

pgAdmini kasutamine metamärgiga %

See peaks tagastama järgmise:

pgAdmini kasutamine metamärgiga %

Kasutades metamärki _

Step 1) Logige sisse oma pgAdmini kontole.

Step 2)

  1. Vasakpoolsel navigeerimisribal klõpsake nuppu Andmebaasid.
  2. Klõpsake Demo.

pgAdmini kasutamine metamärgiga _

Step 3) Sisestage päring päringuredaktorisse:

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

Step 4) Klõpsake nuppu Käivita.

pgAdmini kasutamine metamärgiga _

See peaks tagastama järgmise:

pgAdmini kasutamine metamärgiga _

Step 5) Teise näite käivitamiseks toimige järgmiselt.

  1. Tippige päringuredaktorisse järgmine päring:
    SELECT *
    FROM
       Book
    WHERE
       name LIKE '%Beginner_';
    
  2. Klõpsake nuppu Käivita.

pgAdmini kasutamine metamärgiga _

See peaks tagastama järgmise:

pgAdmini kasutamine metamärgiga _

Kasutades EI Operator

Step 1) Logige sisse oma pgAdmini kontole.

Step 2)

  1. Vasakpoolsel navigeerimisribal klõpsake nuppu Andmebaasid.
  2. Klõpsake Demo.

Kasutades EI Operator pgAdminis

Step 3) Kõigi raamatute vaatamiseks, mille nimed ei alga sõnaga „Postita”, tippige päring päringuredaktorisse:

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

Step 4) Klõpsake nuppu Käivita.

Kasutades EI Operator pgAdminis

See peaks tagastama järgmise:

Kasutades EI Operator pgAdminis

Kasutades EI Operator pgAdminis

Nende raamatute loendi vaatamiseks, mille nimedes pole sõna „Made”:

Step 1) Tippige päringuredaktorisse järgmine päring:

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

Step 2) Klõpsake nuppu Käivita.

Kasutades EI Operator pgAdminis

See peaks tagastama järgmise:

Kasutades EI Operator pgAdminis

kokkuvõte

  • . PostgreSQL LIKE kasutatakse metamärkide abil tekstiväärtuste ja mustrite sobitamiseks.
  • LIKE-klausel võimaldab meil kasutada metamärke SELECT, UPDATE, INSERT või DELETE avaldused.
  • Metamärk % vastab ühele või mitmele väärtusele. Väärtused võivad olla numbrid või tähemärgid.
  • Metamärk _ vastab täpselt ühele väärtusele. Väärtus võib olla märk või number.
  • Operaatori LIKE saab kombineerida operaatoriga NOT, et tagastada mis tahes rida, mis ei vasta otsingumustrile.

Laadige alla selles õpetuses kasutatud andmebaas