MySQL MariaDB

MYSQL Rechercher les enregistrements correspondants avec LIKE

MYSQL Rechercher les enregistrements correspondants avec LIKE
L'opérateur MySQL LIKE teste si une chaîne de caractères particulière ressemble au modèle mentionné. Nous allons faire correspondre une partie des données globales présentes dans un segment qui n'a pas besoin de correspondre précisément. Nous allons lier notre mot-clé à la séquence des informations disponibles dans les colonnes en utilisant une requête générique dans diverses combinaisons. Les caractères génériques MySQL sont des symboles qui aident à faire correspondre des critères difficiles avec les résultats de recherche et ont été utilisés en combinaison avec un opérateur de comparaison appelé LIKE ou un opérateur de contraste appelé NOT LIKE.

MySQL fournit ces deux caractères génériques pour la construction de modèles.

Ouvrez votre shell client de ligne de commande nouvellement installé de MySQL et tapez votre mot de passe MySQL pour y travailler.

Nous avons créé une nouvelle table appelée « enseignant » dans notre base de données contenant différents enregistrements, comme indiqué ci-dessous.

>> SÉLECTIONNER * À PARTIR des données.prof;

MySQL LIKE avec pourcentage % Wildcard :

Le signe de pourcentage fonctionne différemment lorsqu'il est utilisé à différents endroits avec des alphabets. Dans le premier exemple, le signe de pourcentage a été utilisé au dernier emplacement du modèle pour récupérer un enregistrement de deux colonnes, « TeachName » et « sujet », où le nom du sujet commence par « C ». En essayant la requête LIKE ci-dessous, nous avons le résultat ci-dessous.

>> SELECT TeachName, sujet FROM données.enseignant WHERE matière COMME 'C%';

L'utilisation du signe de pourcentage avant le motif signifie que le motif correspondra au dernier emplacement d'une valeur. Nous avons donc recherché les enregistrements des colonnes 'TeachName' et 'subject' où le nom de l'enseignant contenant l'alphabet 'a' au dernier emplacement. Nous avons trouvé la sortie ci-dessous.

>> SELECT TeachName, sujet FROM données.professeur WHERE TeachName LIKE '%a';

Si vous souhaitez rechercher le modèle de chaîne au milieu de la valeur, vous devez placer le signe de pourcentage au début et à la fin du modèle. Nous avons recherché le motif « am » entre les noms des enseignants à l'aide de la requête ci-dessous.

>> SELECT TeachName, sujet FROM données.professeur WHERE TeachName LIKE '%am%';

Utilisez le signe de pourcentage au milieu du motif pour rechercher une valeur correspondante sans savoir ce qui se trouve au milieu. Nous avons affiché toutes les données relatives au nom de l'enseignant commençant par 'S' et se terminant par 'a'.

>> SELECT TeachName, sujet FROM données.professeur WHERE TeachName LIKE 'S%a';

MySQL LIKE avec caractère générique de soulignement '_' :

Nous utiliserons une nouvelle table appelée 'record' pour comprendre l'opérateur de caractère générique de soulignement. Le caractère générique de soulignement « _ » fonctionne comme un seul caractère lorsqu'il est placé à un endroit ; c'est pourquoi cela ne pourrait pas fonctionner pour plus de deux caractères comme le fait un opérateur de pourcentage.

>> SÉLECTIONNER * À PARTIR des données.enregistrer;

Récupérons les valeurs correspondantes en plaçant le trait de soulignement au dernier emplacement du motif. Vous devez définir le nombre exact de caractères dans ce nom particulier. Sinon, votre requête ne fonctionnera pas. Nous souhaitons afficher les enregistrements du 'Nom' commençant par 'Za', où les trois traits de soulignement signifient que les trois derniers caractères de ce nom peuvent être n'importe quoi, et que le nom ne doit être composé que de 5 caractères.

>> SÉLECTIONNER * À PARTIR des données.enregistrer O Nom COMME 'Za___';

Placez l'opérateur de soulignement au début du motif pour rechercher la valeur. Cela implique que les caractères de départ d'une valeur de chaîne peuvent être n'importe quoi. Une fois que le caractère spécifié a été utilisé, le signe de pourcentage signifie que la valeur de chaîne peut être de n'importe quelle longueur. Ainsi, lorsque nous exécutons cette requête, elle renverra les valeurs avec des longueurs différentes.

>> SÉLECTIONNER * À PARTIR des données.enregistrer O Nom COMME '___a%' ;

Dans la requête ci-dessous, nous avons utilisé le caractère de soulignement générique au milieu du motif. Cela signifie que le caractère avant le dernier alphabet peut être n'importe quoi mais le dernier alphabet doit être 'a'. Le signe de pourcentage indique que la chaîne peut être de n'importe quelle longueur.

>> SÉLECTIONNER * À PARTIR des données.enregistrer WHERE Nom LIKE '%_a';

Nous utiliserons le trait de soulignement au début et à n'importe quel point du motif lors de la recherche dans la colonne "Pays". Cela montre que le deuxième caractère d'un motif doit être 'u'.

>> SÉLECTIONNER * À PARTIR des données.enregistrer WHERE Country LIKE '_u_%' ;

LIKE MySQL avec l'opérateur NOT :

MySQL vous aide à fusionner l'opérateur NOT avec l'opérateur LIKE pour identifier une chaîne qui ne correspond même pas à une séquence particulière. Nous avons recherché les enregistrements des colonnes : 'Nom', 'Ville' et 'Pays', où le nom du pays doit avoir l'alphabet 'i' dans sa chaîne à l'un des emplacements du milieu. Nous avons trois résultats pour cette requête particulière.

>> SÉLECTIONNER * À PARTIR des données.enregistrer WHERE Country NOT LIKE '%i%;

MySQL LIKE avec caractères d'échappement :

La séquence que vous souhaitez faire correspondre comprend souvent des caractères génériques, e.g., %10, 20, etc. Dans ce scénario, nous pourrions utiliser la clause ESCAPE pour définir un symbole d'échappement tel que le symbole générique soit traité comme un caractère littéral par MySQL. Lorsque vous ne mentionnez pas spécifiquement un caractère d'échappement, l'opérateur d'échappement standard est la barre oblique inverse '\'. Cherchons les valeurs dans le tableau ayant '_20' à la fin des noms de ville. Vous devez ajouter '\' comme caractère d'échappement générique avant le '_20' car le trait de soulignement est lui-même un caractère générique. Il montre les données des villes ayant '_20' à la fin de leurs noms. Le signe de pourcentage signifie que le début du nom peut être de n'importe quelle longueur et peut avoir n'importe quel caractère.

>> SÉLECTIONNER * À PARTIR des données.enregistrer WHERE CITY LIKE '%\_20' ;

Dans l'exemple ci-dessous, le signe '%' au début et à la fin est utilisé comme opérateur générique comme utilisé auparavant. L'avant-dernier signe '%' est un motif à rechercher, et '\' est un caractère d'échappement ici.

>> SÉLECTIONNER * À PARTIR des données.enregistrer WHERE CITY LIKE '%\%%' ;

Le signe '%' est l'opérateur générique, '\' est le caractère d'échappement et le dernier signe '/' est un motif à rechercher à la dernière position des noms ici.

>> SÉLECTIONNER * À PARTIR des données.enregistrer WHERE CITY LIKE '%\/';

Conclusion:

Nous avons terminé avec Like Clause & Wildcards, qui sont des instruments importants qui aident à rechercher des informations qui correspondent à des modèles compliqués. J'espère que ce guide vous a aidé à atteindre votre objectif réel d'apprentissage des opérateurs LIKE et des opérateurs génériques.

Émulez les clics de souris en survolant à l'aide de la souris sans clic dans Windows 10
L'utilisation d'une souris ou d'un clavier dans la mauvaise posture d'une utilisation excessive peut entraîner de nombreux problèmes de santé, notamme...
Ajoutez des gestes de souris à Windows 10 à l'aide de ces outils gratuits
Ces dernières années, les ordinateurs et les systèmes d'exploitation ont considérablement évolué. Il fut un temps où les utilisateurs devaient utilise...
Contrôlez et gérez le mouvement de la souris entre plusieurs moniteurs dans Windows 10
Gestionnaire de souris à double affichage vous permet de contrôler et de configurer le mouvement de la souris entre plusieurs moniteurs, en ralentissa...