mysql concat乱码问题解决
格式:concat(str1,str2) 或concat(str1,str2,str3)等等。
问题描述:当concat结果集出现乱码时,几乎都是由于连接的字段类型不同导致,如concat中的字段参数一部分是varchar类型,一部分是int类型或doule等其他类型,就会出现乱码。
解决方法:利用mysql的字符串转换函数CONVERT将参数格式化为char类型就可以了。举例: concat('数量:',CONVERT(int1,char),CONVERT(int2,char),'金额:',CONVERT(double1,char),CONVERT(double2,char))。
实例:
1、如下情况时,concat中的字段一部分为字符串类型,一部分为int类型时,查询就会出现乱码。
select concat('测试',"-",id) as testid from user where id=1;
2、把上面代码进行修改,解决乱码问题。
select concat('测试',"-",convert(id,char)) as testid from user where id=1;