PostgreSQL LIKE operator pomaže nam uskladiti tekstualne vrijednosti s uzorcima pomoću zamjenskih znakova. Izraz za pretraživanje moguće je uskladiti s izrazom uzorka.
Ako se dogodi podudaranje, operator LIKE vraća true. Uz pomoć operatora LIKE moguće je koristiti zamjenske znakove u WHERE klauzuli SELECT, UPDATE, INSERT ili DELETE izraza.
U ovom vodiču za PostgreSQL naučit ćete sljedeće:
- Wild karte
- Sintaksa
- Upotreba% zamjenskog znaka
- Upotreba _ zamjenskog znaka
- Korištenje operatora NOT
- Korištenje pgAdmin
Wild karte
Postoje samo dva zamjenska znaka koja se mogu koristiti zajedno s
- Znak postotka (%)
- Podvlaka (_)
Znak postotka (%) koristi se za predstavljanje nule, jednog ili više znakova ili brojeva.
Zamjenski znak donje crte (_) koristi se za predstavljanje jednog znaka ili broja. Ovi se simboli također mogu kombinirati. Ako se operator LIKE ne koristi zajedno s ova dva znaka, ponašat će se kao operator jednakosti.
Sintaksa
Evo sintakse za operator LIKE:
expression LIKE pattern [ ESCAPE 'escape-character' ]
Izraz je izraz znaka poput stupca ili polja.
Uzorak je izraz lika s podudaranjem uzorka.
Znak za bijeg neobavezan je parametar. Omogućuje testiranje doslovnih primjera zamjenskih znakova kao što su% i _. Ako nije naveden, \ će se koristiti kao izlazni znak.
Upotreba% zamjenskog znaka
Kao što smo ranije naveli, znak% odgovara nuli, jednom ili više znakova ili brojeva. Uzmite u obzir sljedeću tablicu:
Knjiga:
Želimo knjigu čiji je naziv poput "Lear
... "da bismo dobili taj rezultat, možemo pokrenuti sljedeću naredbu:SELECT *FROMBookWHEREname LIKE 'Lear%';
Ovo će vratiti sljedeće:
Knjiga je pronađena.
Potražimo knjigu "po" u njenom imenu:
SELECT *FROMBookWHEREname LIKE '%by%';
Ovo će vratiti sljedeće:
Upotreba _ zamjenskog znaka
Kao što smo ranije naveli, znak _ predstavlja jedan znak ili broj. Može se koristiti kao što je prikazano u nastavku:
SELECT *FROMBookWHEREname LIKE '_earn%';
Ovo vraća sljedeće:
Evo još jednog primjera:
SELECT *FROMBookWHEREname LIKE '%Beginner_';
Ovo vraća sljedeće:
Korištenje operatora NOT
Kad se operator LIKE kombinira s operatorom NOT, vraća se svaki redak koji se ne podudara s uzorkom pretraživanja. Na primjer, da bismo vidjeli knjigu čije ime ne počinje s "post", možemo pokrenuti sljedeću naredbu:
SELECT *FROMBookWHEREname NOT LIKE 'Post%';
Ovo vraća sljedeće:
Samo je jedna knjiga zadovoljila uvjet pretraživanja. Pogledajmo popis imena knjiga koje nemaju riječ "Made":
SELECT *FROMBookWHEREname NOT LIKE '%Made%';
Ovo vraća sljedeće:
3 reda zadovoljila su uvjet pretraživanja.
Korištenje pgAdmin
Sada da vidimo kako se radnje mogu izvesti pomoću pgAdmin.
Upotreba% zamjenskog znaka
Korak 1) Prijavite se na svoj pgAdmin račun.
Korak 2)
- Na navigacijskoj traci s lijeve strane kliknite Baze podataka.
- Pritisnite Demo.
Korak 3) Upišite upit u uređivač upita:
SELECT *FROMBookWHEREname LIKE 'Lear%';
Korak 4) Kliknite gumb Izvrši.
Trebao bi vratiti sljedeće:
Da biste potražili knjigu "po" u njenom imenu:
Korak 1) Upišite sljedeću naredbu u uređivač upita:
SELECT *FROMBookWHEREname LIKE '%by%';
Korak 2) Kliknite gumb Izvrši.
Trebao bi vratiti sljedeće:
Upotreba _ zamjenskog znaka
Korak 1) Prijavite se na svoj pgAdmin račun.
Korak 2)
- Na navigacijskoj traci s lijeve strane kliknite Baze podataka.
- Pritisnite Demo.
Korak 3) Upišite upit u uređivač upita:
SELECT *FROMBookWHEREname LIKE '_earn%';
Korak 4) Kliknite gumb Izvrši.
Trebao bi vratiti sljedeće:
Korak 5) Da biste pokrenuli drugi primjer:
- Upišite sljedeći upit u uređivač upita:
SELECT *FROMBookWHEREname LIKE '%Beginner_';
- Kliknite gumb Izvrši.
Trebao bi vratiti sljedeće:
Korištenje operatora NOT
Korak 1) Prijavite se na svoj pgAdmin račun.
Korak 2)
- Na navigacijskoj traci s lijeve strane kliknite Baze podataka.
- Pritisnite Demo.
Korak 3) Da biste vidjeli sve knjige čija imena ne počinju s "Objavi", upišite upit u uređivač upita:
SELECT *FROMBookWHEREname NOT LIKE 'Post%';
Korak 4) Kliknite gumb Izvrši.
Trebao bi vratiti sljedeće:
Da biste vidjeli popis knjiga čija imena nemaju riječ "Izrađeno":
Korak 1) Upišite sljedeći upit u uređivač upita:
SELECT *FROMBookWHEREname NOT LIKE '%Made%';
Korak 2) Kliknite gumb Izvrši.
Trebao bi vratiti sljedeće:
Sažetak:
- PostgreSQL LIKE koristi se za podudaranje tekstualnih vrijednosti s uzorcima pomoću zamjenskih znakova.
- Klauzula LIKE omogućuje nam upotrebu zamjenskih znakova u naredbama SELECT, UPDATE, INSERT ili DELETE.
- Zamjenski znak% podudara se s jednom ili više vrijednosti. Vrijednosti mogu biti brojevi ili znakovi.
- Zamjenski znak _ odgovara točno jednoj vrijednosti. Vrijednost može biti znak ili broj.
- Operator LIKE može se kombinirati s operatorom NOT da bi vratio bilo koji redak koji ne odgovara obrascu pretraživanja.
Preuzmite bazu podataka korištenu u ovom vodiču