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:
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:
Raamat leiti.
Otsime selle nimest raamatut "poolt":
SELECT * FROM Book WHERE name LIKE '%by%';
See tagastab järgmise:
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:
Siin on veel üks näide:
SELECT * FROM Book WHERE name LIKE '%Beginner_';
See tagastab järgmise:
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:
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:
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)
- Vasakpoolsel navigeerimisribal klõpsake nuppu Andmebaasid.
- Klõpsake Demo.
Step 3) Sisestage päring päringuredaktorisse:
SELECT * FROM Book WHERE name LIKE 'Lear%';
Step 4) Klõpsake nuppu Käivita.
See peaks tagastama järgmise:
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.
See peaks tagastama järgmise:
Kasutades metamärki _
Step 1) Logige sisse oma pgAdmini kontole.
Step 2)
- Vasakpoolsel navigeerimisribal klõpsake nuppu Andmebaasid.
- Klõpsake Demo.
Step 3) Sisestage päring päringuredaktorisse:
SELECT * FROM Book WHERE name LIKE '_earn%';
Step 4) Klõpsake nuppu Käivita.
See peaks tagastama järgmise:
Step 5) Teise näite käivitamiseks toimige järgmiselt.
- Tippige päringuredaktorisse järgmine päring:
SELECT * FROM Book WHERE name LIKE '%Beginner_';
- Klõpsake nuppu Käivita.
See peaks tagastama järgmise:
Kasutades EI Operator
Step 1) Logige sisse oma pgAdmini kontole.
Step 2)
- Vasakpoolsel navigeerimisribal klõpsake nuppu Andmebaasid.
- Klõpsake Demo.
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.
See peaks tagastama järgmise:
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.
See peaks tagastama järgmise:
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