MYSQL UNION 同列类型不同时的处理方法

来源:互联网 发布:韩国电影朋友 知乎 编辑:程序博客网 时间:2024/05/01 19:44

最近在使用UNION时,发现,同我对不同的数据类型进行UNION时,返回数据到我的程序时,发生数据转换问题.而在SQLyog中却没有,因此想到,一定有一个可以解决的方案,经过探索,终于发现,如果在执行时,我们对数据类型进行转换,在程序这边就不会发生问题.如下

CONVERT(`ns_product_uph`.`UPH`,CHAR(50)) AS UPH
CONVERT(CONCAT('MAX:',MAX(`ns_product_uph`.`UPH`),' MIN:',MIN(`ns_product_uph`.`UPH`),' AVG:',AVG(`ns_product_uph`.`UPH`)),CHAR(50)) AS UPH

当然,转换时,要使用一定要能转换成功的类型,这点,就不在此说明了,例子如下.

SELECT CONVERT(`ns_product_uph`.`UPH`,CHAR(50)) AS UPH
UNION
SELECT CONVERT(CONCAT('MAX:',MAX(`ns_product_uph`.`UPH`),' MIN:',MIN(`ns_product_uph`.`UPH`),' AVG:',AVG(`ns_product_uph`.`UPH`)),CHAR(50)) AS UPH;

原创粉丝点击