PostgreSQL LIKE, Not Like, Jokerimerkit (%, _ ) Esimerkkejä
⚡ Älykäs yhteenveto
PostgreSQL LIKE yhdistää tekstin kuvioihin käyttämällä kahta jokerimerkkiä – prosenttimerkkiä ja alaviivaa. Tämä tutoriaali näyttää, miten LIKE- ja NOT LIKE-operaattoreita käytetään SELECT-lausekkeissa, ja kussakin tapauksessa on toimivia psql- ja pgAdmin-esimerkkejä.

PostgreSQL LIKE operaattori vertaa tekstiarvoja kuvioihin käyttämällä jokerimerkkejä. Jos hakulauseke vastaa kuviota, LIKE palauttaa arvon trueJokerimerkit toimivat WHERE lauseke SELECT, UPDATE, INSERTtai DELETE.
Mitä ovat PostgreSQL Jokerimerkit?
PostgreSQL tukee kahta LIKE-jokerimerkkiä:
- Prosenttimerkki (
%): vastaa nollaa, yhtä tai useampaa merkkiä tai numeroa. - Alleviivaus (
_): vastaa täsmälleen yhtä merkkiä tai numeroa.
Nämä kaksi symbolia voidaan yhdistää saman kuvion sisällä. Jos LIKE-operaattoria käytetään ilman jokerimerkkiä, se toimii kuten yhtäsuuruusmerkki (=) -operaattori.
PostgreSQL LIKE-syntaksi
LIKE-syntaksi on seuraava:
expression LIKE pattern [ ESCAPE 'escape-character' ]
- lauseke — merkkijono, tyypillisesti sarakkeen tai kentän nimi.
- kuvio — merkkijono, joka sisältää jokerimerkkejä.
- pakomerkki — valinnainen. Voit yhdistää literaalin
%or_merkkiä. Jos kenoviiva ( jätetään pois,\) on oletusarvoinen ohjausmerkki.
PostgreSQL TYKKÄÄ %-jokerimerkillä
% merkki vastaa nollaa, yhtä tai useampaa merkkiä. Tarkastellaan seuraavaa Book taulukossa:
Löydät kirjoja, joiden nimi alkaa kirjaimilla ”Lear”, suorittamalla alla olevan kyselyn.
SELECT *
FROM
Book
WHERE
name LIKE 'Lear%';
Kysely palauttaa:
Kirjojen etsiminen, joiden nimessä on sana "by" missä tahansa:
SELECT *
FROM
Book
WHERE
name LIKE '%by%';
Kysely palauttaa:
PostgreSQL KUTEN _-jokerimerkin kanssa
_ merkki vastaa täsmälleen yhtä merkkiä. Seuraava kysely löytää nimiä, joissa ensimmäinen merkki on mikä tahansa yksittäinen kirjain, jota seuraa ”ansaita” ja sitten mikä tahansa pääte:
SELECT *
FROM
Book
WHERE
name LIKE '_earn%';
Kysely palauttaa:
Toinen esimerkki – etsi mikä tahansa teksti, joka päättyy sanaan ”Aloittelija” ja yhteen lisämerkkiin:
SELECT *
FROM
Book
WHERE
name LIKE '%Beginner_';
Kysely palauttaa:
PostgreSQL EI NIIN KUIN OperaTor
Yhdistä LIKE ja NOT palauttaaksesi rivit, jotka eivät vastaa emme vastaa kaavaa. Esimerkiksi listaa kaikki kirjat, joiden nimi ei ala kirjaimilla ”Post”:
SELECT *
FROM
Book
WHERE
name NOT LIKE 'Post%';
Kysely palauttaa:
Vain yksi kirja täyttää ehdon. Listaa nyt kaikki kirjat, joiden nimi täyttää ehdon. emme sisältävät sanan ”Valmistettu”:
SELECT *
FROM
Book
WHERE
name NOT LIKE '%Made%';
Kysely palauttaa:
Kolme riviä täyttää ehdon.
LIKE-funktion käyttö pgAdminin kanssa
Samat kyselyt voidaan suorittaa myös graafisesti pgAdminin kyselytyökalussa.
% Jokerimerkki pgAdminissa
Vaihe 1) Kirjaudu sisään pgAdminiin.
Vaihe 2) Napsauta vasemmalla olevasta navigointipalkista Tietokannat, napsauta sitten esittely.
Vaihe 3) Kirjoita kysely kyselyeditoriin:
SELECT *
FROM
Book
WHERE
name LIKE 'Lear%';
Vaihe 4) Napauta Suorittaa.
Tulospaneeli näyttää vastaavat kirjat:
Kirjan etsiminen, jonka nimessä on sana ”by”:
Vaihe 1) Kirjoita kyselyeditoriin seuraava:
SELECT *
FROM
Book
WHERE
name LIKE '%by%';
Vaihe 2) Napauta Suorittaa.
Tulospaneeli näyttää:
_ Jokerimerkki pgAdminissa
Vaihe 1) Kirjaudu sisään pgAdminiin.
Vaihe 2) Napsauta vasemmalla olevasta navigointipalkista Tietokannat, napsauta sitten esittely.
Vaihe 3) Kirjoita kysely kyselyeditoriin:
SELECT *
FROM
Book
WHERE
name LIKE '_earn%';
Vaihe 4) Napauta Suorittaa.
Tulospaneeli näyttää:
Vaihe 5) Suorita toinen esimerkki:
- Kirjoita kysely kyselyeditoriin:
SELECT *
FROM
Book
WHERE
name LIKE '%Beginner_';
- Napauta Suorittaa.
Tulospaneeli näyttää:
EI KUTEN pgAdminissa
Vaihe 1) Kirjaudu sisään pgAdminiin.
Vaihe 2) Napsauta vasemmalla olevasta navigointipalkista Tietokannat, napsauta sitten esittely.
Vaihe 3) Jos haluat listata kaikki kirjat, joiden nimi ei ala kirjaimilla ”Post”, kirjoita:
SELECT *
FROM
Book
WHERE
name NOT LIKE 'Post%';
Vaihe 4) Napauta Suorittaa.
Tulospaneeli näyttää:
Listaaksesi kirjoja, joiden nimessä ei ole sanaa ”Made”:
Vaihe 1) Kirjoita kyselyeditoriin seuraava:
SELECT *
FROM
Book
WHERE
name NOT LIKE '%Made%';
Vaihe 2) Napauta Suorittaa.
Tulospaneeli näyttää:
Lataa tässä opetusohjelmassa käytetty tietokanta.























