Afin de comparer des nombres avec des chaînes, MySQL convertit les deux valeurs en nombres réels (stockés selon la norme à virgule flottante).
Les règles sont décrites dans le "Type Conversion in Expression Evaluation" documentation :
Le cas que vous avez décrit correspond au dernier élément :"dans tous les autres cas, les arguments sont comparés à des nombres à virgule flottante (réels)" .