Creo que si te lo plantas así, la cosa se entiende mejor:
Código MySQL:
Ver originalmysql
> SELECT '1x'=1, 'x1x'=1, '1xx'=1, 'xx1'=1, '1xx1' = 1, '123xxx30' = 123;+--------+---------+---------+---------+------------+------------------+
| '1x'=1 | 'x1x'=1 | '1xx'=1 | 'xx1'=1 | '1xx1' = 1 | '123xxx30' = 123 |
+--------+---------+---------+---------+------------+------------------+
| 1 | 0 | 1 | 0 | 1 | 1 |
+--------+---------+---------+---------+------------+------------------+
Como verás, siempre que el primer caracter sea un número, hace una conversión implícita a numero, omitiendo todo lo que siga al numero reconocido. Pero si el caracter es una letra, la conversión es como caracter.