MySQL【三】

多表联合查询

SELECT 字段列表 FROM 表1 [别名1] , 表2 [别名2] WHERE 连接条件表达式 [AND 查询条件表达式 ];

① 要进行联合查询的表都要放在FROM子句中,表名之间用逗号分开,比如FROM s , sc。
② 为了书写方便,可以为表起别名,别名一经定义,在整个查询语句中就只能使用表的别名而不能再使用表名。
③ 连接的条件放在WHERE子句中,格式为:表1.字段=表2.字段。

连接查询—内连接查询

SELECT 字段列表 FROM 表1 [别名1] [INNER] JOIN 表2 [别名2] [ON 表1.字段=表2.字段] [ WHERE 条件表达式 ];

当连接条件由两张表相同名称且类型系统的字段相连接时,可以使用USING(字段名)来连接。

########## 查询每个学生的学号、姓名、选修课程号、课程名及成绩 ##########
select s.sno,sname,sc.cno,cname,score from s join sc on s.sno = sc.sno 
join c on sc.cno = c.cno;

左外连接查询

SELECT 字段列表 FROM 表1 [别名1] LEFT [OUTER] JOIN 表2 [别名2] [ON 表1.字段=表2.字段] [ WHERE 查询条件表达式 ];

在内连接的基础上,结果集中还包括左表(表1)中不满足条件的记录行。当左表中不满足条件的记录与右表(表2)记录进行组合时,右表相应列值为NULL。

右外连接查询

SELECT 字段列表 FROM 表1 [别名1] RIGHT [OUTER] JOIN 表2 [别名2] [ON 表1.字段=表2.字段] [ WHERE 查询条件表达式 ];

在内连接的基础上,结果集中还包括右表(表2)中不满足条件的记录行。当右表中不满足条件的记录与左表(表1)记录进行组合时,左表相应列值为NULL。

########## 查询所有课程的被选情况(包括从未被选修的课程),要求显示选课的学生学号、课程编号、课程名和成绩 ##########
SELECT s.sno, c.cno, cname, score
FROM s
RIGHT JOIN (c LEFT JOIN sc ON c.cno = sc.cno
) ON s.sno = sc.sno;

交叉连接查询

SELECT 字段列表 FROM 表1 [别名1] CROSS JOIN 表2 [别名2]

交叉连接无任何连接条件,也不能带WHERE子句。

########## 查询所有学生的可能选课组合,结果集包括学号、姓名、课程号及课程名 ##########
select s.sno,sname,c.cno,cname from s cross join c;

子查询

########## 查询学号为's003'学生的选修课程号和课程名 ##########
select c.cno,cname 
from (select sc.cno from s join sc on s.sno = sc.sno where s.sno = 's003') as sub
join c on sub.cno = c.cno; 

UNION 联合查询(删除重复行)

SELECT语句1 UNION[ALL] SELECT语句2 [UNION [ALL]< SELECT语句3>][...n]

########## 查询来自'北京'或'上海'的学生学号、姓名、所在院系和家庭地址 ##########
select s.sno,sname,dept,addr from s where addr = '北京' union select s.sno ,sname ,dept,addr from s where addr = '上海';

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

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

相关文章

[ComfyUI]Flux:繁荣生态魔盒已开启,6款LORA已来,更有MJ6写实动漫风景艺术迪士尼全套

今天&#xff0c;我们将向您介绍一款非常实用的工具——[ComfyUI]Flux。这是一款基于Stable Diffusion的AI绘画工具&#xff0c;旨在为您提供一键式生成图像的便捷体验。无论您是AI绘画的新手还是专业人士&#xff0c;这个工具都能为您带来极大的便利。 在这个教程中&#xff…

阿里云CDN稳定吗?

在互联网服务中&#xff0c;CDN&#xff08;内容分发网络&#xff09;扮演着至关重要的角色&#xff0c;它能够加速网站加载速度&#xff0c;提升用户体验。那么&#xff0c;作为市场上的领先者之一&#xff0c;阿里云的CDN到底稳定吗&#xff1f;九河云来和你说一说吧。 一、…

Matlab实现鹈鹕优化算法(POA)求解路径规划问题

目录 1.内容介绍 2.部分代码 3.实验结果 4.内容获取 1内容介绍 鹈鹕优化算法&#xff08;POA&#xff09;是一种受自然界鹈鹕捕食行为启发的优化算法。该算法通过模拟鹈鹕群体在寻找食物时的协作行为&#xff0c;如群飞、潜水和捕鱼等&#xff0c;来探索问题的最优解。POA因其…

C++builder中的人工智能(22):在C+++中读取WAV格式的音频文件

在这篇文章中&#xff0c;我们将探讨如何在C中读取WAV格式的音频文件。音频文件是计算机科学和编程中的一个重要组成部分&#xff0c;正确使用音频可以为娱乐应用程序增添乐趣&#xff0c;或者在业务应用程序中提醒用户重要事件或状态变化。在这篇文章中&#xff0c;我们将解释…

.NET Core 应用程序如何在 Linux 中创建 Systemd 服务 ?

.NET Core 和 Linux 已经成为一个强大的组合&#xff0c;为开发人员提供了一个灵活、高性能的平台来构建和运行应用程序。在 Linux 上部署 .NET Core 应用程序的一个关键方面是利用 systemd 服务来确保应用程序顺利运行&#xff0c;在开机时自动启动&#xff0c;并在失败后重新…

@RestController 源码解读:解决 Web 开发中 REST 服务的疑难杂症

目录 一、RestContrller注解 1.1 查看底层源码 1.2 AliasFor注解说明 1.2.1 注解别名 1.2.2 元数据别名 1.3 value() 方法的作用 一、RestContrller注解 1.1 查看底层源码 首先编写如下内容&#xff1a; RestController public class TestController {} 按住 Ctrl &am…

vs2019托管调试助手 “ContextSwitchDeadlock“错误

错误描述 托管调试助手 "ContextSwitchDeadlock":“CLR 无法从 COM 上下文 0xd183e0 转换为 COM 上下文 0xd18328&#xff0c;这种状态已持续 60 秒。拥有目标上下文/单元的线程很有可能执行的是非泵式等待或者在不发送 Windows 消息的情况下处理一个运行时间非常长…

H.264/H.265播放器EasyPlayer.js RTSP播放器关于webcodecs硬解码H265的问题

EasyPlayer.js H5播放器&#xff0c;是一款能够同时支持HTTP、HTTP-FLV、HLS&#xff08;m3u8&#xff09;、WS视频直播与视频点播等多种协议&#xff0c;支持H.264、H.265、AAC、G711A、Mp3等多种音视频编码格式&#xff0c;支持MSE、WASM、WebCodec等多种解码方式&#xff0c…

免费在线图片翻译工具:PicTech

文章目录 简介编辑功能 简介 PicTech是一款免费的在线图片翻译工具。图片翻译&#xff0c;顾名思义就是把图片中的文字翻译成另外一种语言&#xff0c;并以图片的形式输出。这种功能在手机的词典软件中似乎还挺常见的&#xff0c;但作为一种在线工具我还是第一次见。 其使用过…

【Vue】Vue3.0(二十)Vue 3.0 中mitt的使用示例

上篇文章 【Vue】Vue3.0&#xff08;十九&#xff09;Vue 3.0 中一种组件间通信方式-自定义事件 &#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;Vue专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年11月11日12点23分 文章目录 一、mitt 在…

搭建监控系统Prometheus + Grafana

公司有个技术分享会&#xff0c;但是业务忙&#xff0c;没时间精心准备&#xff0c;所以就匆匆忙忙准备分享一下搭建&#xff08;捂脸哭&#xff09;。技术含量确实不多&#xff0c;但是分享的知识确实没问题。 以下是搭建过程&#xff1a; 一、讲解 Prometheus Prometheus 最…

蓝桥杯真题——班级活动

目录 题目链接&#xff1a;1.班级活动 - 蓝桥云课 题目描述 输入格式 输出格式 样例输入 样例输出 样例说明 评测用例规模与约定 解法一&#xff1a;Map集合处理 举个例子 Java写法&#xff1a; C写法&#xff1a; 运行时间 时间复杂度和空间复杂度 时间复杂度…

Win10下使用Anaconda安装GPU版本PyTorch

一、判断是否有Nvidia(英伟达)显卡 右键开始菜单&#xff0c;在弹出选项中选择任务管理器。 点性能选项&#xff0c;然后点GPU。在右上方会显示GPU名称&#xff0c;只有带NVIDIA的英伟达显卡的电脑才能安装GPU版本&#xff0c;否则其他的就只能安装CPU版本。 二、安装CUDA 首…

精品案例PPT | 企业架构及典型设计方案

本文全面介绍企业架构的理论和实践&#xff0c;包括企业架构的概述、元模型、视图、业务架构、应用架构、数据架构、技术架构以及企业架构管控等内容&#xff0c;有助于企业管理者理解和设计企业级的IT架构&#xff0c;确保架构的全局性、整体性、关联性、可控制性、可实现性和…

java--泛型

欢迎来到我的博客~~欢迎大家对我的博客进行指导~点击进入我的博客主页 目录 一、什么是泛型二、包装类2.1基本数据类型和对应的包装类2.2装箱和拆箱2.3 自动装箱和自动拆箱 三、引出泛型四、泛型类的使用4.1 语法4.2示例 五、泛型如何编译的六、泛型的上界6.1语法6.2 示例 七、…

【CentOS】中的Firewalld:全面介绍与实战应用(下)

&#x1f407;明明跟你说过&#xff1a;个人主页 &#x1f3c5;个人专栏&#xff1a;《Linux &#xff1a;从菜鸟到飞鸟的逆袭》&#x1f3c5; &#x1f516;行路有良友&#xff0c;便是天堂&#x1f516; 目录 一、引言 1、iptables 时代 2、firewalld 时代 二、服务管…

【新人系列】Python 入门(九):数据结构 - 中

✍ 个人博客&#xff1a;https://blog.csdn.net/Newin2020?typeblog &#x1f4dd; 专栏地址&#xff1a;https://blog.csdn.net/newin2020/category_12801353.html &#x1f4e3; 专栏定位&#xff1a;为 0 基础刚入门 Python 的小伙伴提供详细的讲解&#xff0c;也欢迎大佬们…

如何用【钉钉文档】发公告

功能亮点 ✔️借助钉钉文档强大的编辑能力&#xff0c;可以让编写出的公告更加精美。 ✔️将钉钉文档一键导入公告&#xff0c;可以完整保留已经编辑好的格式&#xff0c;无需再手动调整。 ✔️使用钉钉文档&#xff0c;可以将所有公告内容有序沉淀和保存。 &#x1f4a1; 使…

工位管理自动化:Spring Boot企业级工具

1系统概述 1.1 研究背景 随着计算机技术的发展以及计算机网络的逐渐普及&#xff0c;互联网成为人们查找信息的重要场所&#xff0c;二十一世纪是信息的时代&#xff0c;所以信息的管理显得特别重要。因此&#xff0c;使用计算机来管理企业级工位管理系统的相关信息成为必然。开…

相亲小程序(源码+文档+部署+讲解)

最近我在挖掘一些优秀的开源项目时&#xff0c;无意间发现了一个相当给力的系统——相亲小程序管理系统。这个系统不仅功能实用&#xff0c;而且代码结构清晰&#xff0c;易于二次开发。作为一名技术爱好者&#xff0c;我觉得有必要把这个好东西推荐给我的读者们。接下来&#…