本节主要讲述如何使用UNION和UNION ALL操作符将对条SELECT语句组合成一个结果集。
前提SQL:查询学生表中所有的记录
SELECT * FROM STUDENT;
组合查询:
有两种基本情况,需要使用组合查询:
1、在单个查询中从不同的表返回类似结构的数据
2、对单个表执行多个查询,按单个查询返回数据
UNION的使用规则
1、UNION必须由两条或两条以上的SELECT语句组成,语句之间用关键字UNION分隔(因此,如果组合4条SELECT语句,将要使用3个UNION关键字)
2、UNION中的每个查询必须包含相同的列,表达式或聚集函数(不过各个列不需要以相同的次序列出)
3、列数据类型必须兼容:类型不必完全相同,但必须是DBMS可以隐含地转换的类型(例如,不同的数值类型或者不同的日期类型)
如果需要显示重复的行,可以使用UNION ALL 而不是UNION。
Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序
Union All:对两个结果集进行并集操作,包括重复行,不进行排序.
SELECT ID,NAME FROM STUDENT
UNION
SELECT ID,NAME FROM STUDENT;
SELECT ID,NAME FROM STUDENT
UNION ALL
SELECT ID,NAME FROM STUDENT;
领取专属 10元无门槛券
私享最新 技术干货