Maison > base de données > tutoriel mysql > Comment puis-je trouver des lignes MySQL dont les valeurs sont contenues dans une chaîne de texte donnée ?

Comment puis-je trouver des lignes MySQL dont les valeurs sont contenues dans une chaîne de texte donnée ?

Patricia Arquette
Libérer: 2025-01-05 17:45:41
original
484 Les gens l'ont consulté

How Can I Find MySQL Rows Whose Values Are Contained Within a Given Text String?

Recherche de valeurs de ligne contenues dans un texte de requête dans MySQL

L'opérateur LIKE de MySQL excelle dans la localisation des lignes contenant le texte de requête spécifié. Prenons cet exemple :

SELECT name FROM user WHERE name LIKE "%john%"
Copier après la connexion

Des lignes comme John Smith et Peter Johnson seront renvoyées.

Mais que se passe-t-il si nous recherchons le contraire, des lignes dont les valeurs existent dans un texte de requête ? Par exemple, fournir « John Smith et Peter Johnson sont les meilleurs amis » et rechercher tous les noms du tableau présents dans cette chaîne. Comment pouvons-nous accomplir cela ?

Opération LIKE inversée

Pour effectuer cette opération LIKE inversée, l'utilisation de la fonction CONCAT() est essentielle :

SELECT name FROM user 
WHERE 'John Smith and Peter Johnson are best friends' LIKE
  CONCAT('%', name, '%')
Copier après la connexion

La fonction CONCAT() concatène les chaînes, dans ce cas, en enveloppant le nom de chaque ligne entre des signes de pourcentage ("%"). Cela permet à l'opérateur LIKE de vérifier si l'intégralité du texte de la requête contient chaque nom.

Par exemple, si la table utilisateur inclut les noms « John » et « Peter », la requête renverra :

| name |
| --- |
| John |
| Peter |
Copier après la connexion

Cette technique identifie efficacement les lignes qui correspondent à un texte spécifique, inversant ainsi le comportement LIKE traditionnel.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal