select 'a'+1结果:'a'+1
1
为什么?

解决方案 »

  1.   

    或 select 'a'+'c'
    显示结果是:
    'a'+'c'
    0
      

  2.   

    mysql自动转换为数字型'a'->0 0+1=1
    'a'+'b'=0
    concat('a',1)='a1'
      

  3.   

    + 号在MYSQL中的数字运算,所以'a' 会被MYSQL转换成数字0然后参与运算。
    MYSQL字符串相加是 concat 或者你可以设置SQLMODE后使用 ||
      

  4.   

    用+号,就会转换成数字? 
    yes'a'为什么会转成1,而不是2??
    no
    'a'->0
      

  5.   

    SELECT CAST('a' AS DECIMAL)
    字符转换成数字型就是0