Maison >base de données >tutoriel mysql >Comment échapper au caractère de soulignement dans une requête MySQL LIKE ?

Comment échapper au caractère de soulignement dans une requête MySQL LIKE ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-22 01:41:18198parcourir

How to Escape the Underscore Character in a MySQL LIKE Query?

Requête MySQL LIKE avec caractère spécial _

Considérez le tableau 'images' suivant :

id img_path
1 abc_1.jpg
2 abc_2.jpg
3 abcde_1.jpg
4 abcde_2.jpg
5 abcdef_1.jpg

Problème :

Vous souhaitez récupérer les entrées où 'img_path' commence par 'abc_'. À l'aide de la requête :

SELECT id FROM images WHERE img_path LIKE 'abc_%'

renvoie les cinq lignes, pas seulement les lignes avec « id » 1 et 2.

Solution :

Le Le trait de soulignement '_' est un caractère spécial dans MySQL et doit être échappé à l'aide de barres obliques inverses. La requête correcte est :

SELECT id FROM images WHERE img_path LIKE 'abc\_%'

Cette requête renvoie avec précision uniquement les identifiants 1 et 2, comme prévu.

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!

Déclaration:
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