PostgreSQL LIKE, Not Like, Wildcards (%, _ ) Exemples
⚡ Résumé intelligent
PostgreSQL LIKE compare du texte à des modèles en utilisant deux caractères génériques : le signe pourcentage et le trait de soulignement. Ce tutoriel explique comment utiliser LIKE et NOT LIKE dans les instructions SELECT, avec des exemples concrets en psql et pgAdmin pour chaque cas.

Le PostgreSQL COMME L'opérateur LIKE compare les valeurs textuelles à des modèles à l'aide de caractères génériques. Si l'expression de recherche correspond au modèle, LIKE renvoie trueLes caractères génériques fonctionnent dans le WHERE clause de SELECT, UPDATE, INSERT, DELETE.
Quels sont PostgreSQL Des jokers ?
PostgreSQL prend en charge deux caractères génériques LIKE :
- Signe de pourcentage (
%): Correspond à zéro, un ou plusieurs caractères ou chiffres. - Soulignement (
_): correspond exactement à un caractère ou un chiffre.
Les deux symboles peuvent être combinés au sein d'un même motif. Si LIKE est utilisé sans aucun caractère générique, il se comporte comme le signe égal (=) opérateur.
PostgreSQL Syntaxe LIKE
La syntaxe de base de LIKE est :
expression LIKE pattern [ ESCAPE 'escape-character' ]
- expression — une expression de caractères, généralement un nom de colonne ou de champ.
- modèle — une expression de caractères contenant des caractères génériques.
- caractère d'échappement — facultatif. Permet de faire correspondre littéralement
%or_caractères. Lorsqu'il est omis, la barre oblique inverse (\) est le caractère d'échappement par défaut.
PostgreSQL J'AIME avec le symbole générique %
Le % Le signe correspond à zéro, un ou plusieurs caractères. Prenons l'exemple suivant. Book table:
Pour trouver les livres dont le titre commence par « Lear », exécutez la requête ci-dessous.
SELECT *
FROM
Book
WHERE
name LIKE 'Lear%';
La requête renvoie :
Pour trouver des livres dont le titre contient « par » n’importe où :
SELECT *
FROM
Book
WHERE
name LIKE '%by%';
La requête renvoie :
PostgreSQL J'AIME avec le caractère générique _
Le _ Le signe correspond à un seul caractère. La requête suivante trouve les noms dont le premier caractère est une lettre unique, suivie de « earn » puis d’un suffixe quelconque :
SELECT *
FROM
Book
WHERE
name LIKE '_earn%';
La requête renvoie :
Autre exemple : faire correspondre tout texte se terminant par « Débutant » suivi d’un caractère supplémentaire :
SELECT *
FROM
Book
WHERE
name LIKE '%Beginner_';
La requête renvoie :
PostgreSQL PAS COMME Operator
Combinez LIKE et NOT pour renvoyer les lignes qui correspondent. pas Respectez le modèle. Par exemple, listez tous les livres dont le titre ne commence pas par « Post » :
SELECT *
FROM
Book
WHERE
name NOT LIKE 'Post%';
La requête renvoie :
Un seul livre remplit la condition. Maintenant, listez tous les livres dont le nom correspond à cette condition. pas contiennent le mot « Fabriqué » :
SELECT *
FROM
Book
WHERE
name NOT LIKE '%Made%';
La requête renvoie :
Trois lignes satisfont à la condition.
Utilisation de LIKE avec pgAdmin
Ces mêmes requêtes peuvent également être exécutées graphiquement dans l'outil de requêtes de pgAdmin.
% Caractère générique dans pgAdmin
Étape 1) Connectez-vous à pgAdmin.
Étape 2) Dans la barre de navigation à gauche, cliquez sur Bases de données, puis clique Demo.
Étape 3) Saisissez la requête dans l'éditeur de requêtes :
SELECT *
FROM
Book
WHERE
name LIKE 'Lear%';
Étape 4) Cliquez à nouveau Exécution.
Le volet de résultats affiche les livres correspondants :
Pour rechercher un livre dont le titre contient « par » :
Étape 1) Saisissez ce qui suit dans l'éditeur de requêtes :
SELECT *
FROM
Book
WHERE
name LIKE '%by%';
Étape 2) Cliquez à nouveau Exécution.
Le volet des résultats affiche :
_ Caractère générique dans pgAdmin
Étape 1) Connectez-vous à pgAdmin.
Étape 2) Dans la barre de navigation à gauche, cliquez sur Bases de données, puis clique Demo.
Étape 3) Saisissez la requête dans l'éditeur de requêtes :
SELECT *
FROM
Book
WHERE
name LIKE '_earn%';
Étape 4) Cliquez à nouveau Exécution.
Le volet des résultats affiche :
Étape 5) Exécutez le deuxième exemple :
- Saisissez la requête dans l'éditeur de requêtes :
SELECT *
FROM
Book
WHERE
name LIKE '%Beginner_';
- Cliquez à nouveau Exécution.
Le volet des résultats affiche :
PAS COMME dans pgAdmin
Étape 1) Connectez-vous à pgAdmin.
Étape 2) Dans la barre de navigation à gauche, cliquez sur Bases de données, puis clique Demo.
Étape 3) Pour afficher la liste de tous les livres dont le titre ne commence pas par « Post », tapez :
SELECT *
FROM
Book
WHERE
name NOT LIKE 'Post%';
Étape 4) Cliquez à nouveau Exécution.
Le volet des résultats affiche :
Liste des livres dont le titre ne contient pas le mot « Fabriqué » :
Étape 1) Saisissez ce qui suit dans l'éditeur de requêtes :
SELECT *
FROM
Book
WHERE
name NOT LIKE '%Made%';
Étape 2) Cliquez à nouveau Exécution.
Le volet des résultats affiche :
Téléchargez la base de données utilisée dans ce tutoriel.























