数据库——自然连接、内连接、外连接(左外连接、右外连接、全外连接)、交叉连接「建议收藏」

数据库——自然连接、内连接、外连接(左外连接、右外连接、全外连接)、交叉连接「建议收藏」1.自然连接(*naturaljoin)*自然连接不用指定连接列,也不能使用ON语句,它默认比较两张表里相同的列,`SELECT*FROMstudentNATURALJOINscore;`显示结果如下:2.内连接(innerjoin)和自然连接区别之处在于内连接可以自定义两张表的不同列字段。内连接有两种形式:显式…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1. 自然连接(*natural join)*
学生表这里写图片描述
自然连接不用指定连接列,也不能使用ON语句,它默认比较两张表里相同的列,

 `SELECT*FROM student NATURAL JOIN score;`

显示结果如下:
这里写图片描述
2. 内连接(inner join
和自然连接区别之处在于内连接可以自定义两张表的不同列字段。
内连接有两种形式:显式和隐式。
例:以下语句执行结果相同。
这里写图片描述

①隐式的内连接,没有INNER JOIN,形成的中间表为两个表的笛卡尔积。

SELECT student.name,score.codeFROM student,score WHERE score.code=student.code;

② 显示的内连接,一般称为内连接,有INNER JOIN,形成的中间表为两个表经过ON条件过滤后的笛卡尔积。

SELECT student.name,score.codeFROM student INNER JOIN score ON score.code=student.code;

3.外连接(outer join
①左外连接(left outer join):返回指定左表的全部行+右表对应的行,如果左表中数据在右表中没有与其相匹配的行,则在查询结果集中显示为空值。
例:SELECT student.name,score.codeFROM student LEFT JOIN score ON score.code=student.code;
查询结果如下:
这里写图片描述
②右外连接(right outer join):与左外连接类似,是左外连接的反向连接。

SELECT student.name,score.codeFROM student RIGHT JOIN score ON score.code=student.code;
这里写图片描述
②全外连接(full outer join):把左右两表进行自然连接,左表在右表没有的显示NULL,右表在左表没有的显示NULL。(MYSQL不支持全外连接,适用于Oracle和DB2。)

在MySQL中,可通过求左外连接与右外连接的合集来实现全外连接。
例:

SELECT student.name,score.codeFROM student LEFT JOIN score ON
score.
code=student.codeUNION SELECT student.name,score.code
FROM student RIGHT JOIN score ON score.
code=student.code;

4.交叉连接(cross join:相当与笛卡尔积,左表和右表组合。
SELECT student.name,score.code FROM student CROSS JOIN score ON score.code=student.code;
这里写图片描述

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

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

(0)
上一篇 2022年8月30日 上午7:00
下一篇 2022年8月30日 上午7:16


相关推荐

  • 解决Tomcat启动后404的问题

    概述当我遇到这个问题的时候,我真是操**的崩溃了,你懂我意思吧,就是那种各种百度也找不到答案,然后有好多回答都是帮我解释什么叫”404”????Excuseme???????我用你解释吗???我觉的真挺逗的,还有一大堆说程序有问题的,就是这个说法啊不能排除,确实有的开发人员给运维的war包就是有问题的,不过在我这儿跟包没关系,纯粹就是自己的问题,所以运维人员如果查到网上说让你去怪开…

    2022年4月9日
    62
  • 如何设置电信光猫?图解手把手教你(超级详细)「建议收藏」

    如何设置电信光猫?图解手把手教你(超级详细)「建议收藏」自从电信升级成光纤之后,光猫经常有点小问题的,如果电信说帮你设置好漫天要价的话,求人还不如求自己,或者电信送的光猫坏了,买他们的超贵,自己买一个又好又便宜的自己设置就的了注意:2016年以后,电信为

    2022年8月3日
    8
  • 什么是Web 2.0——下一代软件的设计模式和商业模式 (全文翻译—1 博客版序)

    什么是Web 2.0——下一代软件的设计模式和商业模式 (全文翻译—1 博客版序)这篇文章,是经O’Reilly公司的TimO’Reilly先生授权后,进行全文翻译、出版的。包括:杂志节选版和网络全文版。转载:请遵循CC版权,保留原文作者和翻译作者信息,以及文章链接。感谢:互联网周刊的李洋提供了许多建议。几个文章版本链接:英文原文:http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/

    2022年7月21日
    15
  • tpshop带微分销_TPshop微分销商城有什么作用[通俗易懂]

    tpshop带微分销_TPshop微分销商城有什么作用[通俗易懂]TPshop微分销商城有什么作用?据你所了解的有多少?一、可以简化商品的购物流程我们都知道的是在实体店进行购买的时候,我们可以直接看到商品,并且能够摸到产品的质量如何,并且在最后,假如并不合适的时候,是可以找商家进行退还的,但是网上购买就有所不同,有的时候还有些复杂,所以微商分销商品也着力于这一点进行考虑。适当的简化了商品的购物流程,让整个购物旅程更加美好。二、通过这一点吸引了浩繁的粉丝进行了最低…

    2022年5月16日
    45
  • FastJson中@JSONField注解使用

    FastJson中@JSONField注解使用最近做项目中,使用了json格式在服务器之间进行数据传输。但是发现json格式数据不符合JAVA中的变量定义规则,并且难以理解,因此需要在后台中做二次处理,将数据处理成我们系统中定义的格式。思路:   1.定义需要返回的bean,bean中定义需要返回的数据    2.获取到需要处理的JSON字符串   3.将JSON字符串转换为bean,再将转换后的bean返回给客

    2025年8月21日
    8
  • 一个组合恒等式

    一个组合恒等式k gt 0 当 k 为奇数时 begin aligned sum i 0 k binom n i amp binom n 0 binom n 1 binom n 2 binom n 3 dots binom n k 1 binom n k amp binom n

    2026年3月18日
    2

发表回复

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

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