Un LIKE insensible à la casse
Pour rappel, l’opérateur LIKE disponible pour la clause WHERE d’une requête SQL est insensible à la casse. Que vous indiquiez les mots clés syno_mail ou SYNO_MAIL ou encore SyNo_MaIl, le résultat obtenu sera identique.
Caractère « _ » dans un LIKE
Là où cela devient intéressant c’est que le mot clé SYNO_MAIL match aussi SYNOAMAIL
Si je traduis le like ci-dessus en regexp on obtient #^syno.mail$#i
Autre exemple :
SELECT * FROM table WHERE field LIKE "S__O_M__L"
Matche avec SYNO_MAIL.
Si je traduis le like ci-dessus en regexp on obtient #^s.{2}o.m.{2}l$#i
Conclusion
Si vous voulez EXACTEMENT l’expression SYNO_MAIL (non sensible à la casse) écrivez donc ceci :
SELECT * FROM table WHERE field LIKE "SYNO\_MAIL"