码迷,mamicode.com
首页 > 其他好文 > 详细

使用union all查询时字段不匹配解决办法

时间:2014-07-23 21:20:27      阅读:574      评论:0      收藏:0      [点我收藏+]

标签:union all查询   字段不匹配   

小问题,可能新手碰到也会被书上的定义限定思维,一时反应不过来。


定义:

UNION 或UNION ALL 操作符用于合并两个或多个 SELECT 语句的结果集。

请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。


场景:

当两个select的结果集个别字段有差别时需要UNION 或UNION ALL 合并。


解决办法:

某个结果集少字段可以用空值或固定值代替,使用别名达到列名一致要求。


 如 要合并student 和teacher 的结果,而teacher木有name这个列


select        name , age from student
union all
select ‘无‘ as name, age from teacher


注意:

可能会有类型不匹配现象,这时只需要用cast()做类型转换就可以了。



使用union all查询时字段不匹配解决办法

标签:union all查询   字段不匹配   

原文地址:http://viphyy.blog.51cto.com/6403455/1476326

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!