Réalisation de comparaisons de chaînes sensibles à la casse dans MySQL
Les comparaisons de chaînes MySQL standard ne sont généralement pas sensibles à la casse. Cela peut être problématique lorsqu’une correspondance précise est requise. Heureusement, MySQL fournit une méthode simple pour respecter la casse dans vos requêtes.
Implémentation de requêtes sensibles à la casse dans MySQL
Le mot-clé BINARY
est la clé pour effectuer des comparaisons de chaînes sensibles à la casse. Voici la syntaxe :
<code class="language-sql">SELECT * FROM `table` WHERE BINARY `column` = 'value';</code>
Illustrons avec un exemple :
Imaginez un tableau structuré comme ceci :
<code class="language-sql">CREATE TABLE `test` ( `id` INT NOT NULL AUTO_INCREMENT, `name` VARCHAR(255) NOT NULL, PRIMARY KEY (`id`) ); INSERT INTO `test` (`name`) VALUES ('John'), ('JOHN'), ('JoHn');</code>
Une requête sans BINARY
correspondrait aux trois entrées :
<code class="language-sql">SELECT * FROM `test` WHERE `name` = 'john';</code>
Cependant, en ajoutant BINARY
, la requête devient sensible à la casse et ne renvoie que la correspondance exacte :
<code class="language-sql">SELECT * FROM `test` WHERE BINARY `name` = 'john';</code>
Cette technique garantit des comparaisons précises sensibles à la casse, éliminant les erreurs potentielles causées par une correspondance insensible à la casse.
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!