oracle 左连接 简写,SQL左连接

oracle 左连接 简写,SQL左连接原标题 SQL 左连接今天分享一下开发中何时运用左连接进行关联查询 大牛请忽视 废话不多说 直接上表结构 只有两张表作为例子 Person 表为人员信息 Types 为人员类型辅助表 没有定义外键关联 记住这句话 运用左连接时肯定有一张表为主表 另一张表为辅表 图 1 Person 表图 2 类型表现在我们要对两张表进行关联查询 查询出每个人员类型的描述信息图 3 两张表进行关联查询从查询结果我们看

原标题:SQL左连接

今天分享一下开发中何时运用左连接进行关联查询(大牛请忽视~)。

废话不多说,直接上表结构。只有两张表作为例子,Person表为人员信息,Types为人员类型辅助表,没有定义外键关联。

记住这句话——运用左连接时肯定有一张表为主表,另一张表为辅表!

b4f6f7769056fbbfb436c1365ee33d63.png

图1.Person表

d66a455d2129aba83437e8975ba360e4.png

图2.类型表

现在我们要对两张表进行关联查询,查询出每个人员类型的描述信息

d30f42203b7d666e910faa1565a31647.png

图3.两张表进行关联查询

从查询结果我们看的出Adam没有显示出来,原因很简单因为Adam的type为 B ,而 B 在Types表中并不存在。在实际开发中往往都是这种情况,不管你关联了什么辅表,所有的人员都应该被查询出来,因为Person表为主表!(当然这是看业务需求,并不绝对)

So,现在我们就应该用左连接进行查询出所有人员的信息。

d910696ffa0b5c77ce4076e623b2047e.png

图3.进行左连接查询

结果可以满足我们的要求——显示主表的所有数据。

拓展:

在Oracle中,有另一种简单的写法见下图

6cd7de6b40cd5f89ec58222314fc6350.png

图4.Oracle左连接简便写法

Oracle语法定义为,所有的表都放在from后边,where条件里进行关联,所有主表要关联的字段都放在 = 左边,所有辅表所关联的字段都放在 = 右边(+)。

但是前些天写了简便的左连接,被我的开发leader军训了,因为关联了13张表,导致条件太多,维护起来特别麻烦!所以呢这里给大家一个建议,Oracle查询中2、3张表进行左连接可以用简便的写法,如果关联的表太多的话墙裂不推荐使用左连接!

83992c569fcecf1276e86f9a7b38022f.png

图5.简写左连接被训案例

最后,进行多表关联是,表的别名也要起的规范点,让人一眼就知道对应的哪张表,这样会减轻后人维护所需的成本。

今天就到这里了,下次整理些Oracle常用且好用的函数~~~~。返回搜狐,查看更多

责任编辑:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/198742.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午2:34
下一篇 2026年3月26日 下午2:35


相关推荐

  • 对于java二维数组初始化的理解[通俗易懂]

    对于java二维数组初始化的理解[通俗易懂]1.初始化:在定义变量之后,系统为变量分配的空间内存储的值是不确定的,所以要对这个空间进行初始化以确保程序的安全性和确定性2.给二维数组元素赋值:b[0]={1,2,3}//Arrayconstantscanonlybeusedininitializers数组常量只能被用于初始化,初始化动作在编译时完成。b[0]=newint[]{1,2}//赋值newin…

    2022年5月25日
    37
  • JSP实用教程(基础入门教程)

    一、JSP技术概述  在Sun正式发布JSP(JavaServerPages)之后,这种新的Web应用开发技术很快引起了人们的关注。JSP为创建高度动态的Web应用提供了一个独特的开发环境。按照Sun的说法,JSP能够适应市场上包括ApacheWebServer、IIS4.0在内的85%的服务器产品。即使您对ASP”一往情深”,我们认为,关注

    2022年4月17日
    140
  • python怎么换行输出的数字对齐_print语句输出换行,format格式化输出「建议收藏」

    print其实本来挺简单的一个函数,奈何每次用都忘记了怎么换行输出,所以想想算了还是自己做个记录,免得每次都要去查.print函数用法:print(value,…,sep=”,end=’\n’,file=sys.stdout,flush=False)Printsthevaluestoastream,ortosys.stdoutbydefault.Optiona…

    2022年4月15日
    165
  • IntelliJIDEA汉化[通俗易懂]

    IntelliJIDEA汉化[通俗易懂]GitHub开发者pingfangX的开源项目,原地址:https://github.com/pingfangx/jetbrains-in-chinese进入网站后找到相应的JetBrains版本的汉化文件,下载后放到lib文件夹下即可。详细使用说明:https://github.com/pingfangx/TranslatorX/wiki/Usag…

    2022年5月17日
    91
  • pycharm 导入包,引入包快捷键

    pycharm 导入包,引入包快捷键alt 回车

    2026年3月19日
    2
  • html显示当前脚本错误,访问网页总是提示当前网页脚本发生错误怎么办?「建议收藏」

    html显示当前脚本错误,访问网页总是提示当前网页脚本发生错误怎么办?「建议收藏」很多用户现在还在使用IE浏览器来浏览网页,不过最近有用户反映在访问网页的过程中弹出“脚本错误”的提示框,提示当前页面的脚本发生错误,这是怎么回事呢?出现这种情况的原因是用户使用的浏览器不能完全支持页面里的脚本,该如何解决此问题呢?方法一:清除IE缓存1、清除IE浏览器的缓存,点击工具》Internet选项,然后点击Internet删除文件(勾选删除所有脱机内容),之后重新打开IE浏览器,同时确认并…

    2022年8月30日
    6

发表回复

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

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