sql中的联合查询「建议收藏」

sql中的联合查询「建议收藏」我们在实际应用中,或许会用到关于sql的联合查询的应用,下面来总结一下联合查询的具体应用,做一下记录便于记忆。首先,通过一个实例来讲一下联合查询(关键词union)语法:select………unionselect……..union…….select*fromempoloyeeswhereemaillike”%a%”ordepartment_id>90;改用union的用法select*fromempol

大家好,又见面了,我是你们的朋友全栈君。

我们在实际应用中,或许会用到关于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://javaforall.net/145050.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月12日 下午8:20
下一篇 2022年5月12日 下午8:40


相关推荐

  • Xshell出现要继续使用此程序必须应用到最新的更新或使用新版本

    Xshell出现要继续使用此程序必须应用到最新的更新或使用新版本

    2021年11月4日
    83
  • mycat实现读写分离_mybatis读写分离实现

    mycat实现读写分离_mybatis读写分离实现环境:四台主机,两台mysql做主从:master和slave一台mysql做测试,ip:10.30.162.142一台mycat做读写分离,ip:192.168.122.230客户端访问mycat端的虚拟数据库mycat端虚拟数据库设定如下:user:adminpassword:redhatmycat通过一个真实数据库授过权的用户来对数据库端进行数据的操作,在这个实验中这个用户为m…

    2022年10月13日
    4
  • 软件实施工程师的经验之谈(适合新手,老鸟请指正)[通俗易懂]

    软件实施工程师的经验之谈(适合新手,老鸟请指正)[通俗易懂]干了三年实施,技术没学多少,人倒是变的圆滑多了问题1:实施干嘛的呢?说简单通俗点,开发就是研发生产电视机的,我们实施就是给买电视机的人去进行安装调试,试运行完了签验收单收款和后期的日常维护(当然,如果大公司有自己的售后服务团队就另当别论了)问题2:实施的薪资(我想大部分人都关注这个吧)以一线城市北上广为例,我在北京,第一份实施工作月薪4500,出差补助一天一百,报销路费和住宿费,不报销吃饭…

    2022年6月2日
    66
  • PS出现“不能完成命令,因为没有足够内存(RAM)”的解决方案

    PS出现“不能完成命令,因为没有足够内存(RAM)”的解决方案PS 出现 不能完成命令 因为没有足够内存 RAM 的解决方案

    2026年3月17日
    2
  • 解决Vue.js not detected的问题

    解决Vue.js not detected的问题前几天遇到了一个问题 在安装完 Vue jsdevtools 后 打开自己写的一个 vue js 网页 发现这个图标并没有亮起来 还是灰色 点击图标显示 Vue jsnotdetecte 打开控制台也没有发现有 vue 的选项网上找了很多解决方案都没有解决 大部分都是让重新安装 Vue jsdevtools 搞了大半天终于解决了 我们先看看 Vue jsdevtools 是否生

    2026年3月16日
    1
  • python中如何打开csv文件_python如何读取csv文件

    python中如何打开csv文件_python如何读取csv文件python如何读取csv文件,我们这里需要用到python自带的csv模块,有了这个模块读取数据就变得非常容易了。工具/原料python3方法/步骤1这里以sublimetext3编辑器作为示范,新建一个文档。2我们可以先确认CSV文档是否可以正确打开。并且放在同一个文件夹里面。3importcsv这是第一步要做的,就是调用csv模块。4importcsvfile=open(‘data…

    2022年7月21日
    31

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号