日期:2014-05-16  浏览次数:20360 次

uion all 的经典总结

总结:

集合操作是对多个查询结果进行并集,差集,交集的操作,都不忽略null

行, 除了union all 默认不做排序和剔除重复行的操作外,

union,minus,intersect都默认按第1个查询结果的第1列进行升序排列,并且

不包含重复行。

对集合运算的结果要排序,只能在最后一个select 后面排序,是对整个集

合操作进行排序,而不是对最后一个select 进行排序,排序选择的列必须是第

1 个select 中出现的列,如果有别名,则使用别名,不能选用没有查询出来的

列(这和普通的order by不一样,普通的order by可以选用不在select中的列

排序),当然可以按位置指定order by,比如order by 1 desc,就是按第1列降

序。

在业务要求允许的情况下,能使用union all 就不要使用union,因为union

all不做排序剔重操作,使用union all效率方面要好点。