SQL 之连接查询(左连接和右连接的区别)

devtools/2024/11/20 15:40:22/

在SQL中,连接查询用于将来自两个或多个表的数据组合起来。左连接(LEFT JOIN)和右连接(RIGHT JOIN)是连接查询的两种类型,它们在处理表之间的关系时有所不同。

左连接(LEFT JOIN)

左连接的结果包括左表(也称为基表)的所有记录,以及左表中与右表匹配的记录。如果左表中的记录在右表中没有匹配的记录,则右表中的对应列将包含NULL值。

语法示例:

sql">SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name = table2.column_name;

特点:

  • 左表的所有记录都会出现在结果集中。
  • 如果右表中没有匹配的记录,则结果集中的右表列将显示为NULL。
  • 通常用于获取左表的所有数据,即使右表没有对应的数据。

右连接(RIGHT JOIN)

右连接的结果包括右表的所有记录,以及右表中与左表匹配的记录。如果右表中的记录在左表中没有匹配的记录,则左表中的对应列将包含NULL值。

语法示例:

sql">SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name = table2.column_name;

特点:

  • 右表的所有记录都会出现在结果集中。
  • 如果左表中没有匹配的记录,则结果集中的左表列将显示为NULL。
  • 通常用于获取右表的所有数据,即使左表没有对应的数据。

区别总结

  • 数据完整性:左连接保证左表的所有数据都被包含,而右连接保证右表的所有数据都被包含。
  • 结果集大小:左连接的结果集可能比右连接小,因为左连接只包含左表的数据和匹配的右表数据,而右连接包含右表的所有数据。
  • 使用场景:左连接常用于需要显示左表所有记录的情况,即使它们在右表中没有匹配项。右连接则用于需要显示右表所有记录的情况,即使它们在左表中没有匹配项。

在实际应用中,选择使用左连接还是右连接取决于具体的业务需求和数据关系。


http://www.ppmy.cn/devtools/135515.html

相关文章

Dubbo源码解析-服务注册(五)

一、服务注册 当确定好了最终的服务配置后,Dubbo就会根据这些配置信息生成对应的服务URL,比如: dubbo://192.168.65.221:20880/org.apache.dubbo.springboot.demo.DemoService? applicationdubbo-springboot-demo-provider&timeout300…

深度学习中的mAP

在深度学习中,mAP是指平均精度均值(mean Average Precision),它是深度学习中评价模型好坏的一种指标(metric),特别是在目标检测中。 精确率和召回率的概念: (1).精确率(Precision):预测阳性结果中实际正确的比例(TP / …

【Java】Linux、Mac、Windows 安装 Oracle JDK

一、Linux 环境安装JDK 1、下载 根据实际需求,在 Oracle 官网 上下载某版本JDK(如 jdk-8u341-linux-x64.tar.gz),再通过文件传输工具(如 Finalshell、FileZilla 等)丢到服务器上。 2、安装 # 查看是否安…

计算光纤色散带来的相位移动 matlab

需要注意的地方 1.以下内容纯属个人理解,很有可能不准确,请大家仅做参考 2.光速不要直接用3e8 m/s,需要用精确的2.9979.... 3.光的频率无论在真空还是光纤(介质)都是不变的,是固有属性,但是波长lambdac/f在不同的介…

Scala 中迭代器的duplicate方法,toList方法,zip方法

duplicate方法: 复制迭代器 duplicate 返回值是一个元组,有两个数据源一样的,独立的迭代器 迭代器特点:不能回头val list8List("A","B","C")val (it8,it9)list8.iterator.duplicatewhile (it8.has…

opencv kdtree pcl kdtree 效率对比

由于项目中以一个环节需要使用kdtree ,对性能要求比较严苛&#xff0c;所以看看那个kdtree效率高一些。对比了opencv和pcl。 #include <array> #include <deque> #include <fstream> #include <opencv2/highgui.hpp> #include <opencv2/imgproc.hpp…

二本学院非科班天崩开局,如何逆天改命拿下大厂后端

天崩开局&#xff0c;如何破局自救 2021 年高考结束&#xff0c;我当时的第一志愿是计算机科学与技术专业&#xff0c;但是我被录取到了河南工程学院的高分子材料与工程专业。 我去咨询计算机相关行业的从业者&#xff0c;以及多方面网络搜集相关信息之后得到了一个很现实的消…

2024JYU计算机大赛决赛题解

U505016 退休 思路 至少需要的月数为 ⌈ 1000000 a b ⌉ \lceil\frac{1000000}{ab}\rceil ⌈ab1000000​⌉。 当月数为 k k k 时&#xff0c;可以用 ⌊ k 12 ⌋ \lfloor \frac{k}{12}\rfloor ⌊12k​⌋ 年 k % 12 k \% 12 k%12 月表示。 因为每 12 12 12 个月一年&am…