PostgreSQL LIKE, Not Like, Wildcards (%, _ ) Exemple
โก Rezumat inteligent
PostgreSQL LIKE potriveศte textul cu modele folosind douฤ caractere wildcard - semnul procent ศi sublinierea. Acest tutorial aratฤ cum se utilizeazฤ LIKE ศi NOT LIKE รฎn instrucศiunile SELECT, cu exemple psql ศi pgAdmin funcศionale pentru fiecare caz.
PostgreSQL SIMILAR Operatorul potriveศte valorile textului cu modele folosind wildcard-uri. Dacฤ expresia de cฤutare se potriveศte cu modelul, LIKE returneazฤ trueCaracterele wildcard funcศioneazฤ รฎn WHERE clauza de SELECT, UPDATE, INSERT, DELETE.
Care sunt PostgreSQL Wildcards?
PostgreSQL acceptฤ douฤ caractere wildcard LIKE:
- Semnul procentual (
%): potriveศte zero, unul sau mai multe caractere sau cifre. - Subliniere (
_): se potriveศte cu exact un caracter sau o cifrฤ.
Cele douฤ simboluri pot fi combinate รฎn interiorul aceluiaศi model. Dacฤ se foloseศte LIKE fฤrฤ niciun wildcard, se comportฤ ca simbolul egal (=) operator.
PostgreSQL Sintaxฤ LIKE
Sintaxa de bazฤ a lui LIKE este:
expression LIKE pattern [ ESCAPE 'escape-character' ]
- expresie โ o expresie de tip caracter, de obicei un nume de coloanฤ sau de cรขmp.
- model โ o expresie de caracter care conศine caractere wildcard.
- caracter de evadare โ opศional. Vฤ permite sฤ potriviศi literalul
%or_caractere. Cรขnd este omisฤ, bara oblicฤ inversatฤ (\) este caracterul de escape implicit.
PostgreSQL LIKE cu wildcard-ul %
% semnul se potriveศte cu zero, unul sau mai multe caractere. Luaศi รฎn considerare urmฤtoarele Book masa:
Pentru a gฤsi cฤrศi al cฤror nume รฎncepe cu โLearโ, executaศi interogarea de mai jos.
SELECT *
FROM
Book
WHERE
name LIKE 'Lear%';
Interogarea returneazฤ:
Pentru a gฤsi cฤrศi al cฤror nume conศine โdeโ oriunde:
SELECT *
FROM
Book
WHERE
name LIKE '%by%';
Interogarea returneazฤ:
PostgreSQL LIKE cu caracterul wildcard _
_ semnul se potriveศte cu exact un caracter. Urmฤtoarea interogare gฤseศte nume รฎn care primul caracter este o singurฤ literฤ, urmatฤ de โearnโ ศi apoi orice sufix:
SELECT *
FROM
Book
WHERE
name LIKE '_earn%';
Interogarea returneazฤ:
Un alt exemplu โ potriviศi orice text care se terminฤ cu โรncepฤtorโ plus รฎncฤ un caracter:
SELECT *
FROM
Book
WHERE
name LIKE '%Beginner_';
Interogarea returneazฤ:
PostgreSQL NU CA OperaTdR
Combinฤ LIKE cu NOT pentru a returna rรขnduri care fac nu potriveศte modelul. De exemplu, enumeraศi fiecare carte al cฤrei nume nu รฎncepe cu โPostโ:
SELECT *
FROM
Book
WHERE
name NOT LIKE 'Post%';
Interogarea returneazฤ:
O singurฤ carte รฎndeplineศte condiศia. Acum enumeraศi fiecare carte al cฤrei nume รฎndeplineศte nu conศin cuvรขntul โFabricatโ:
SELECT *
FROM
Book
WHERE
name NOT LIKE '%Made%';
Interogarea returneazฤ:
Trei rรขnduri รฎndeplinesc condiศia.
Utilizarea LIKE cu pgAdmin
Aceleaศi interogฤri pot fi executate grafic ศi รฎn instrumentul de interogare al pgAdmin.
% Wildcard รฎn pgAdmin
Pas 1) Conectaศi-vฤ la pgAdmin.
Pas 2) รn bara de navigare din stรขnga, faceศi clic pe Baze de date, apoi apasa Demo.
Pas 3) Tastaศi interogarea รฎn Editorul de interogฤri:
SELECT *
FROM
Book
WHERE
name LIKE 'Lear%';
Pas 4) Clic Executa.
Panoul cu rezultate afiศeazฤ cฤrศile corespondente:
Pentru a cฤuta o carte care conศine โdeโ oriunde รฎn denumire:
Pas 1) Tastaศi urmฤtoarele รฎn Editorul de interogฤri:
SELECT *
FROM
Book
WHERE
name LIKE '%by%';
Pas 2) Clic Executa.
Panoul cu rezultate aratฤ:
_ Wildcard รฎn pgAdmin
Pas 1) Conectaศi-vฤ la pgAdmin.
Pas 2) รn bara de navigare din stรขnga, faceศi clic pe Baze de date, apoi apasa Demo.
Pas 3) Tastaศi interogarea รฎn Editorul de interogฤri:
SELECT *
FROM
Book
WHERE
name LIKE '_earn%';
Pas 4) Clic Executa.
Panoul cu rezultate aratฤ:
Pas 5) Executaศi al doilea exemplu:
- Tastaศi interogarea รฎn Editorul de interogฤri:
SELECT *
FROM
Book
WHERE
name LIKE '%Beginner_';
- Clic Executa.
Panoul cu rezultate aratฤ:
NU CA รฎn pgAdmin
Pas 1) Conectaศi-vฤ la pgAdmin.
Pas 2) รn bara de navigare din stรขnga, faceศi clic pe Baze de date, apoi apasa Demo.
Pas 3) Pentru a lista toate cฤrศile al cฤror nume nu รฎncepe cu โPostโ, tastaศi:
SELECT *
FROM
Book
WHERE
name NOT LIKE 'Post%';
Pas 4) Clic Executa.
Panoul cu rezultate aratฤ:
Pentru a enumera cฤrศi al cฤror titlu nu conศine cuvรขntul โMadeโ:
Pas 1) Tastaศi urmฤtoarele รฎn Editorul de interogฤri:
SELECT *
FROM
Book
WHERE
name NOT LIKE '%Made%';
Pas 2) Clic Executa.
Panoul cu rezultate aratฤ:
Descฤrcaศi baza de date utilizatฤ รฎn acest tutorial.
























