联合查询(union)
在对数据信息进行操作时,有时需要将不同数据表中的数据信息组合在一起,这时需要使用联合查询。联合查询指的是将多表中的行数据组合在一个数据集中进行显示。
使用UNOIN运算符时需要注意以下几点:
两个查询语句中列的数量和列的数据类型必须相互兼容。
最后结果集中的列名来自第一个SELECT语句的列名。
在需要对集合查询结果进行排序时,必须使用第一个查询语句中的列名。
查询结果将对SELECT列表中的列按照从左到右的顺序自动进行排序。
例子
#use test;
(SELECT id,NAME,score FROM student) UNION ALL (SELECT id,NAME,score FROM teacher);
列类型及名称都可以不一致 ,但是查询出来的表必须具有相同的列数量。
union 和 union all的区别:
union和union all 关键字都是将两个结果集合合并为一个,但这两者从使用和效率上来说都有所不同。
UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果
而UNION ALL只是简单的将两个结果合并后就返回。这样,如果返回的两个结果集中有重复的数据,那么返回的结果集就会包含重复的数据了。
最后的学习总结:实践最重要,看懂了的不一定代表你会了,必须亲自操作验证,总之一句话,学习的过程中任重而道远。