MySQL—多表查询—小结

news2025/1/13 3:31:22

一、引言

前面的博客已经全部学习完了关于多表查询。接下来对多表查询进行一个小结。


(1)多表查询主要是讲了两个方面
  • 多表关系

(不管业务关系如何的复杂,最终多表的关系基本上可以分为三类)

"一对多"、"多对多" 以及 "一对一" 。

注意

1、一对多的关联关系中,一般在 "多" 的一方建立外键来关联 "一"的一方的主键。

(员工和部门)

2、多对多的关系中,需要建立中间表来维护多表之间的关系。所以在中间表之中至少包含两个外键,来关联另外两张表的主键。(学生和课程)

3、一对一的关系中,表结构的拆解(自己拆解自己)。在任意一方加入外键,关联另外一方的主键,并且设置外键为唯一的(UNIQUE)。这个又好像和一对多比较像,所以此时为了限定它们之间是一对一的关系,则需要在外键上再添加一个唯一约束,从而保证它们是一对一的关系。(用户和用户详细)

  • 多表查询

多表查询所涉及的查询形式有以下4种:

注意

1、内连接。查询的是表A和表B交集部分的数据。分为隐式内连接和显示内连接。注意语法格式。

2、外连接。会完全包含左边或右边表的数据,取决于左外或者右外。当然也包含交集部分的数据。注意语法格式。

3、自连接。其实实际上是对某一张表连接查询了多次用到自连接就必须给表起别名

4、子查询。指外层的SQL语句中又嵌套了一个 SELECT 语句(内层的这个查询就称为子查询)。又根据子查询返回的结果进行分类。子查询出现的位置可以出现在 WHERE 之后FROM 之后,更可以出现在 SELECT 之后

这是本部分学习——关于多表查询的所有内容。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1810940.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

每天一个数据分析题(三百五十九)- 多维分析模型

图中是某公司记录销售情况相关的表建立好的多维分析模型,请根据模型回答以下问题: 2)产品表左连接品牌表的对应关系属于? A. 一对多 B. 一对一 C. 多对一 D. 多对多 数据分析认证考试介绍:点击进入 题目来源于CD…

拯救学弟学妹计划之【论文帮手】是如何实现的?

功能介绍 概述 论文帮手是一款专为学术研究者设计的智能应用,旨在提供论文撰写和研究支持。应用通过深入了解用户的研究领域和需求,利用先进的搜索技术和人工智能,为用户提供定制化的学术资源和写作支持。 功能详述 1. 相关论文查找 此功…

Androidstudio项目加载不出来,显示Connect timed out

Android studio加载不出来所需要的环境依赖,99%的问题都是网络原因 解决办法有两个: 1.科学上网 2.使用国内的镜像 方法一自行解决,下面重点介绍方法二 在项目目录下找到gradle->wrapper->gradle-wrapper.properties 将项目的distributionUrl改为https://mirrors.cl…

SwiftUI七使用UI控件

代码下载 在应用中,用户可以创建一个简介来描述他们自已的个人情况。为了让用户可以编辑自己的简介,需要添加一个编辑模式并设计一个偏好设置界面。这里使用多种通用控件来展示用户的各种数据,并在用户保存他们所做的数据修改时更新地标数据…

【物料选型】东芝(Toshiba)车载器件选型和应用

东芝(Toshiba)拥有汽车电气化所需的丰富的半导体产品,专注于用于电动助力转向、电动水泵和电动空调风扇等应用的车载逆变器、电池管理系统和电机驱动。特别是高压和低损耗功率器件的表现优异。未来,东芝将继续提供面向未来的尖端半…

自动驾驶TPM技术杂谈 ———— 车用温度传感器

文章目录 介绍描述冷却液温度传感器进气温度传感器变速器油温传感器排气温度传感器EGR废气循环监测温度传感器车外温度传感器车内温度传感器日照温度传感器空调蒸发器出口温度传感器热敏铁氧体温度传感器 介绍 温度传感器是一种常见的传感器类型,广泛应用于温度检测…

Objective-C 学习笔记 | 回调

Objective-C 学习笔记 | 回调 Objective-C 学习笔记 | 回调运行循环目标-动作对(target-action)辅助对象通知回调与对象所有权深入学习:选择器的工作机制 参考书:《Objective-C 编程(第2版)》 Objective-C…

git服务器gitblit安装

1、下载 Gitblit 2、下载完后解压: 3、配制: 保存,退出编辑。 4、运行cmd,启用gitblit。 5、根据运行后的提示,也就是我们之间设置的port9990打开: 输入admin,admin就可以登录,这个账号密码&a…

LaTex中`\texorpdfstring`命令的使用方法

LaTex中\texorpdfstring命令的使用方法 \texorpdfstring命令 \texorpdfstring命令是hyperref包提供的一种替换宏,常用于标题中的公式显示。 命令后跟随两个参数: \texorpdfstring{TeXstring}{PDFstring}第一个参数TeXstring在正文标题中显示&#xf…

MySQL存储引擎详述:InnoDB为何胜出?

MySQL作为当前最流行的开源关系型数据库之一,其强大的功能和良好的性能使其广泛应用于各种规模的应用系统中。其中,存储引擎的设计理念是MySQL数据库灵活高效的关键所在。 一、什么是存储引擎 存储引擎是MySQL架构的重要组成部分,负责MySQL中数据的存储和提供了视图,存储过程等…

半导体光电子学最后总结(3)光子晶体

Matrix theory 波传输矩阵 (Wave-Transfer Matrix) 散射矩阵 (Scattering Matrix) 光在均匀介质中的传播公式矩阵化 Relation between Scattering Matrix and Wave-Transfer Matrix 级联系统的投射/反射系数:艾里公式 (Airy Formulas) 无损对称系统 斜入射波的传输…

Golang的context

目录 context的基本使用 为什么需要context Context interface 标准 error emptyCtx cancelCtx Deadline 方法 Done 方法 Err 方法 Value 方法 context.WithCancel() newCancelCtx WithCancel中propagateCancel cancel timerCtx valueCtx context的基本使用…

宽睿数字平台兼容TDengine 等多种数据库,提供行情解决方案

小T导读:最近,涛思数据与宽睿金融宣布了一项重要合作。在此之前,宽睿金融对 TDengine 进行了性能测试,并根据测试报告的结果,决定将 TDengine 接入宽睿数字平台,以提升高密度行情处理效率。本文将详细介绍此…

智慧监狱大数据整体解决方案(51页PPT)

方案介绍: 智慧监狱大数据整体解决方案通过集成先进的信息技术和大数据技术,实现对监狱管理的全面升级和智能化改造。该方案不仅提高了监狱管理的安全性和效率,还提升了监狱的智能化水平,为监狱的可持续发展提供了有力支持。 部…

【Vue】获取模块内的actions方法

目标: 掌握模块中 action 的调用语法 (同理 - 直接类比 mutation 即可) 注意: 默认模块中的 mutation 和 actions 会被挂载到全局,需要开启命名空间,才会挂载到子模块。 调用语法: 直接通过 store 调用 $store.di…

Flutter - Material3适配

demo 地址: https://github.com/iotjin/jh_flutter_demo 代码不定时更新,请前往github查看最新代码 Flutter - Material3适配 对比图具体实现一些组件的变化 代码实现Material2的ThemeDataMaterial3的ThemeData Material3适配官方文档 flutter SDK升级到3.16.0之后 …

ES启动失败原因记录

一、JDK不兼容: es和jdk是一个强依赖的关系,所以当我们在新版本的ElasticSearch压缩包中包含有自带的jdk,但是当我们的Linux中已经安装了jdk之后,就会发现启动es的时候优先去找的是Linux中已经装好的jdk,此时如果jdk的…

35、matlab设置字体、查看工具包版本、窗口默认布局和程序发布

1、matlab设置字体 1)找到预设并点击预设 2)设置流程:字体——>自定义——>编辑器——>选择字体及格式——>确定 如图序号所示 2、matlab查看工具包版本:ver命令 1)命令行窗口输入命令 即可查看工具包…

反射...

一、反射的定义 二、获取Class对象三种方式 全类名:包名类名。 public class test {public static void main(String [] args) throws ClassNotFoundException {//第一种方式Class class1Class.forName("test02.Student");//第二种方法Class class2Stud…

03-240605-Spark笔记

03-240605 1. 行动算子-1 reduce 聚合 格式: def reduce(f: (T, T) > T): T 例子: val sparkConf new SparkConf().setMaster("local[*]").setAppName("Operator")val sc new SparkContext(sparkConf) ​val rdd sc.makeRDD(List(1…