Why is the result of `select 'a'=0;` 1?

前端 未结 4 1457
刺人心
刺人心 2020-12-21 15:25
mysql> SELECT \'a\'=\'b\'=\'c\';
+-------------+
| \'a\'=\'b\'=\'c\' |
+-------------+
|           1 |
+-------------+
mysql> select \'a\'=0, \'b\'=\'c\';
+---         


        
4条回答
  •  一向
    一向 (楼主)
    2020-12-21 16:02

    TEXT values are cast to INTEGER values by interpreting all the leading digits as a number. If there are no digits, it casts to 0.

    So:

    '123a' = 123
    '4a' = 4
    'a' = 0
    

提交回复
热议问题