J'ai une table MySQL et j'ai besoin d'y récupérer des champs. J'ai besoin de la chaîne qui contient H_
et HP_
Séparément en utilisant deux requête différente.MySQL - La recherche de chaîne contient "_" avec LIKE
Mais le problème est que le trait de soulignement est dans le joker et je suis incapable de trouver le résultat correct.
Exemple de requête de HP_
SELECT nc.`logname`, nc.`client_id`, nc.`Customer_Name`, cb.`bwm_day_cir_upload`, cb.`bwm_day_cir_download`
FROM `new_client` nc
LEFT JOIN `client_bandwidth` cb ON cb.`client_id` = `nc`.`client_id`
WHERE nc.`logname` LIKE '%HP_%' AND nc.`Active` = 'y' ORDER BY TRIM(UPPER(nc.`logname`))
Échapez-vous '\ _'. – lad2025
Et quand vous rencontrez des problèmes comme celui-ci, il est toujours utile de vérifier d'abord la documentation. [Documentation MySQL pour 'like'] (https://dev.mysql.com/doc/refman/5.7/fr/string-comparison-functions.html#operator_like): _" Pour tester les occurrences littérales d'un caractère générique, Si vous ne spécifiez pas le caractère 'ESCAPE'," \\ 'est supposé." _ –
@MarkRotteveel, Merci pour la suggestion. –