Conversion implicite de type de données MySQL
MySQL possède la capacité de convertir automatiquement des chaînes en valeurs numériques dans certaines circonstances.
Mécanisme de conversion
- '1234' est converti en 1234 car il s'agit d'une chaîne de type entier.
- '1abc' est converti en 1 car la partie numérique de la chaîne est identifié pour la conversion.
- 'text' n'est pas converti en nombre car il ne contient aucun caractère numérique reconnaissable.
Interprétation de la requête
Avec le scénario donné, où units.id est un type bigint, la requête
SELECT table.*
FROM table
WHERE>
sera interprétée comme suit :
- 'text' est implicitement converti en 0,0 (zéro à virgule flottante).
- La clause WHERE devient désormais effectivement WHERE id = 0.0.
- La requête renverra les lignes où l'identifiant est égal à 0 (bigint).
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