SQL基础之 - UNION,UNION ALL, EXCEPT, INTERSECT图形小结

在使用UNION与UNION ALL的过程中,多多少少也会接触到不同表之间数据的比较。常常用到的关键字除了UNION与UNION ALL之外还有EXCEPT和INTERSECT之类。

它们的区别在哪里呢?这里总结如下:

  • UNION:包括所有结果集中的数据,而且没有重复(所有的重复行都只表现为一个实例,并且对结果进行排序)。
  • UNION ALL:包括两个结果集中的所有数据,不论它们中间是否有重复。(不对结果进行排序)。
  • EXCEPT:只包括EXCEPT关键字左边且右边的结果集中不存在的那些行。基本上这等同于“显示A中存在,B中不存在的所有行”。
  • INTERSECT:只包括两个结果集中都存在的那些行。INTERSECT类似于一个内部联结,不同的是INTERSECT对结果集中重复的行进行操作而不是对某个特定的联结进行操作。

用图形表示如下:

 

posted on 2013-04-17 15:18  听不清你说什么  阅读(677)  评论(0编辑  收藏  举报

导航