我们在实际应用中,或许会用到关于sql的联合查询的应用,下面来总结一下联合查询的具体应用,做一下记录便于记忆。
首先,通过一个实例来讲一下联合查询(关键词 union)
语法:
select ………
union
select ……..
union
…….
select * from empoloyees where email like "%a%" or department_id >90;
改用union的用法
select * from empoloyees where email like "%a%"
union
select * from empoloyees where department_id >90;
可能很多人不理解,为什么明明可以整合到一起用or解决,为什么还要选择用更为复杂的union
其实,union在下面的情形中使用才会显出优势来。
*查询中国用户中男性的信息和外国用户中男性用户的信息,数据是分别存在两个不同的数据表格中,且数据的字段名不一致*
select id, cname ,csex from t_ca where csex='男'
union
select t_id ,tName,tGender from t_ua where tGender='male';
想一想如果换成用or来解决,你要怎么做?
所以我们通过上面的例子可以看出来联合查询的应用场景就是:
要查询的结果来自于多个表,且多个表没有直接的连接关系,但查询的信息是一致的。
那我们在使用联合查询时需要注意的事项都有哪些,一起来看一下:
1、要求多条查询语句的查询列数是一致的。
2、要求多条查询语句的查询的每一列的类型和顺序最好是对应一致的。
3、注意union的去重,如果不想去重,使用union all可以包含重复项
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/hz/148153.html