MySQL中使用GROUP_CONCAT查出结果为BLOB
小编在 MySQL 中执行查询语句发现使用 GROUP_CONCAT 关键字导致查出结果为 BLOB 类型
【附上SQL和图片】
select GROUP_CONCAT(ac.car_role) from accident_car ac #后面省略 。。。。
问题解决,由于 GROUP_CONCAT 函数是将行转列根据自定义字符拼接,所以是字符类型,小编于是灵机一动,将它的结果转成 char 如何。结果还真的可以!!
【修改之后】
select cast(GROUP_CONCAT(ac.car_role)as char) from accident_car ac #后面省略 。。。。 #下面这样也可以 select GROUP_CONCAT(cast(ac.car_role as char)) from accident_car ac #后面省略 。。。。
【问题分析总结】
经过多次测试和分析后,小编得出结果
只要是 GROUP_CONCAT 中的类型为数值类型,都会导致这种现象的发生
所以才需要上面的 cast 类型强转
*以上仅是小编自己的见解,如有不对的地方,还请多多指教