Mysql
 sql >> Base de données >  >> RDS >> Mysql

MySQL convertit/convertit automatiquement une chaîne en nombre ?

Les réponses à vos trois premières questions sont :oui, oui et non.

Lorsque la chaîne 'text' est converti en nombre, il devient la valeur 0 .

La documentation qui décrit la conversion de type est ici .

Pour votre requête :

SELECT table.* 
FROM table 
WHERE id='text';

La règle est capturée par cet extrait de la documentation :

Dans tous les autres cas, les arguments sont comparés en tant que nombres à virgule flottante (réels).

En d'autres termes, cela équivaut en fait à :

WHERE id = 0.0