SQL中的LEFT JOIN、RIGHT JOIN和INNER JOIN

在SQL中,JOIN操作是连接两个或多个数据库表,并根据两个表之间的共同列(通常是主键和外键)返回数据的重要方法。其中,LEFT JOIN(左连接)、RIGHT JOIN(右连接)和INNER JOIN(内连接)是最常用的三种JOIN类型。下面我们将详细介绍这三种连接方式的原理、语法以及使用示例。

一、LEFT JOIN(左连接)

定义

LEFT JOIN(左连接)返回左表(LEFT JOIN语句中指定的第一个表)的所有行,即使右表(第二个表)中没有匹配的行。如果右表中没有匹配的行,则结果中右表的部分将包含NULL值。

 

SELECT * FROM student s LEFT JOIN class c on s.c_num = c.id

二、RIGHT JOIN(右连接)

定义

RIGHT JOIN(右连接)返回右表(RIGHT JOIN语句中指定的第二个表)的所有行,即使左表(第一个表)中没有匹配的行。如果左表中没有匹配的行,则结果中左表的部分将包含NULL值。

 给班级表添加一个id=5,name=五班的数据

然后执行下面的sql

SELECT * FROM student s RIGHT JOIN class c on s.c_num = c.id

 

三、INNER JOIN(内连接)

定义

INNER JOIN(内连接)返回两个表中都满足连接条件的行。如果某个行在一个表中存在而在另一个表中不存在,则该行不会出现在结果集中。

SELECT * FROM student s INNER JOIN class c on s.c_num = c.id

 

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

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

相关文章

《JavaEE篇》--多线程(2)

《JavaEE篇》--多线程(1) 线程安全 线程不安全 我们先来观察一个线程不安全的案例: public class Demo {private static int count 0;public static void main(String[] args) throws InterruptedException {Thread t1 new Thread(() -> {//让count自增5W次…

HarmonyOS网络请求的简单用法,HttpUtil简单封装

请求网络获取数据 点击按钮发送一个post请求,发送一条string由于此处的返回result.data本身就是一个string,因此不需要转换类型 Button(请求网络).margin({ top: 10 }).fontSize(24).fontWeight(FontWeight.Bold).onClick(() > {httpRequestPost(http…

风格迁移开发记录(DCT-Net)

1.DCT-Net部署 阿里旗下的 modelscope社区,丰富的开源风格迁移算法模型 DCT-Net GitHub链接 git clone https://github.com/menyifang/DCT-Net.git cd DCT-Netpython run_sdk.py下载不同风格的模型如下图每个文件夹代表一种风格,有cartoon_bg.pb, car…

C++STL详解(一)——String接口详解(上)!!!

目录 一.string类介绍 二.string类的构造赋值 2.1string类的拷贝和构造函数 2.2深拷贝 三.string类的插入 3.1push_back 3.2append 3.3操作符 3.4insert 四.string的删除 4.1pop_back 4.2erase 五.string的查找 5.1find 5.2rfind 六.string的比较 6.1compare函…

深入浅出WebRTC—Pacer

平滑发包(Pacer)是 WebRTC 实现高质量实时通信不可或缺的一部分。在视频通信中,单帧视频可能包含大量的数据,如果未经控制地立即发送,可能瞬间对网络造成巨大压力。Pacer 能够根据网络条件动态调整发送速率&#xff0c…

python库(14):Arrow库简化时间处理

1 Arrow简介 Arrow 是一个被称为程序员的时间处理利器的 Python 库。 从诞生起,它就是为了填补 Python 的 datetime 类型的功能空白而生的。为程序员提供了一种更简单、更直观的方式来处理日期和时间。 2 安装Arrow库 pip install arrow -i https://pypi.tuna.ts…

什么是设备运维管理系统?有什么作用?(6款设备运维管理系统推荐)

一、什么是设备运维管理系统? 设备运维管理系统是一种集成了监控、管理、维护和优化设备性能的软件平台。它旨在通过自动化的手段,提高设备运行的可靠性和效率,降低运维成本,并优化资源利用。 设备运维管理系统能够实时监控设备…

【1】Python机器学习之基础概念

1、什么是机器学习 最早的机器学习应用——垃圾邮件分辨 传统的计算机解决问题思路: 编写规则,定义“垃圾邮件”,让计算机执行对于很多问题,规则很难定义规则不断变化 机器学习在图像识别领域的重要应用: 人脸识别…

带您详细了解安全漏洞的产生和防护

什么是漏洞? 漏洞是 IT、网络、云、Web 或移动应用程序系统中的弱点或缺陷,可能使其容易受到成功的外部攻击。攻击者经常试图寻找网络安全中的各种类型的漏洞来组合和利用系统。 一些最常见的漏洞: 1.SQL注入 注入诸如 SQL 查询之类的小代…

BUU [PASECA2019]honey_shop

BUU [PASECA2019]honey_shop 技术栈:任意文件读取、session伪造 开启靶机,我有1336金币,买flag需要1337金币 点击上面的大图,会直接下载图片 抓包看看,感觉是任意文件读取 修改下路径读一下 读到了session密钥是Kv8i…

Springboot validated JSR303校验

1.导入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId></dependency> 2.测试类 package com.jmj.gulimall.product.testC;import lombok.Data;import javax.val…

C++《类和对象》(中)

一、 类的默认成员函数介绍二、构造函数 构造函数名与类同名内置类型与自定义类型析构函数拷贝构造函数 C《类和对象》(中) 一、 类的默认成员函数介绍 默认成员函数就是⽤⼾没有显式实现&#xff0c;编译器会⾃动⽣成的成员函数称为默认成员函数。 那么我们主要学习的是1&…

Linux环境docker部署Firefox结合内网穿透远程使用浏览器测试

文章目录 前言1. 部署Firefox2. 本地访问Firefox3. Linux安装Cpolar4. 配置Firefox公网地址5. 远程访问Firefox6. 固定Firefox公网地址7. 固定地址访问Firefox 前言 本次实践部署环境为本地Linux环境&#xff0c;使用Docker部署Firefox浏览器后&#xff0c;并结合cpolar内网穿…

手动搭建微型计算机(涉及:CPU、内存、寄存器等)

目录 微型计算机基础元件及作用CPU地址总线数据总线 内存地址总线数据总线内存大小的计算 寄存器先将Z80CPU与TC5517内存相连参考文章 微型计算机基础元件及作用 CPU、内存、I/O CPU 包含地址总线引脚和数据总线引脚。 以Z80CPU为例&#xff1a; 地址总线 地址总线引脚…

Apache Bigtop 正式支持 openEuler,共创大数据新生态

近日&#xff0c;在OpenAtom openEuler&#xff08;简称"openEuler"&#xff09;BigData SIG与Linaro的携手努力下&#xff0c;** Apache Bigtop于2024年7月8日发布的3.3.0新版本中&#xff0c;正式宣告了对openEuler操作系统的原生支持**。这一里程碑式的进展&#…

[微信小程序] css 解决纯数字或字母不自动换行的问题、控制文字行数

效果 css 代码 word-break: break-all; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;解释 word-break: break-all; 作用&#xff1a;这个属性允许在单词内部进行换行&#xff0c;即使单词很长也…

Mysql - 索引

目录 一、存储引擎 二、索引 索引结构 索引分类 索引语法 联合索引 前缀索引 索引使用规则 最左前缀法则 范围查询使索引失效 字段做运算操作索引失效 字符串字段不加单引号索引失效 字段做前模糊查询索引失效 or连接条件索引失效 数据发布情况索引失效 指定使用…

AIGC高频产品面试题(二)

什么叫大模型&#xff0c;人工智能大模型是什么&#xff1f; 之前&#xff0c;人工智能大多针对特定的场景应用进行训练&#xff0c;生成的模型难以迁移到其他场景&#xff0c;属于“小模型”的范畴。整个训练过程中&#xff0c;不仅手工调参工作量大&#xff0c;还需要给机器“…

[ECCV 2024] [复旦]RECE:扩散模型概念移除,只需3秒即可充分移除风险概念!

本文内容来自公众号粉丝投稿&#xff0c;作者来自复旦大学的视觉与学习实验室(FVL)。研究团队提出了一种可靠、高效的概念移除方法&#xff08;RECE&#xff09;。该方法以解析解的形式&#xff0c;迭代地进行风险概念移除、风险概念嵌入推导&#xff0c;从而确保模型彻底移除风…

【MySQL进阶之路 | 高级篇】优化数据库结构和大表优化

目录结构&#xff1a; 目录 目录结构&#xff1a; 1. 优化数据库结构 1.1 拆分表&#xff1a;冷热数据分离 1.2 增加冗余字段 1.3 优化数据类型 情况1&#xff1a;对整数类型数据进行优化 情况2&#xff1a;既可以使用文本类型也可以使用整数类型的字段&#xff0c;要选…