nner join 与 left join 之间的区别

一次性讲清楚INNER JOIN、LEFT JOIN、RIGHT JOIN的区别和用法详解 介绍INNER JOIN、LEFT JOIN、RIGHT JOIN的区别和用法详解 阅读详情

nner join 与 left join 之间的区别

关于inner join 与 left join 之间的区别,以前以为自己搞懂了,今天从前端取参数的时候发现不是预想中的结果,才知道问题出在inner join 上了。

需求是从数据库查数据,在前端以柱形图的形式展现出来,查到的数据按行业分组,显示每个行业的户数及户数占比,涉及到的字段有A表的用户数、总用户数和B表的行业名称。本来是不管查不查的到数据,在X轴都应该显示行业名称的,结果是X、Y轴都没有任何数据显示。问题就是我用错了联结方式。

一、sql的left join 、right join 、inner join之间的区别

left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录

 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录

 inner join(等值连接) 只返回两个表中联结字段相等的行

举例如下

表A记录如下:

aID     aNum

1     a20050111

2     a20050112

3     a20050113

4     a20050114

5     a20050115

表B记录如下:

bID     bName

1     2006032401

2     2006032402

3     2006032403

4     2006032404

8     2006032408

1.left join

sql语句如下:

select * from A

left join B

on A.aID = B.bID

结果如下:

aID     aNum     bID     bName

1     a20050111    1     2006032401

2     a20050112    2     2006032402

3     a20050113    3     2006032403

4     a20050114    4     2006032404

5     a20050115    NULL     NULL

(所影响的行数为 5 行)

结果说明:

left join是以A表的记录为基础的,A可以看成左表,B可以看成右表,left join是以左表为准的.

换句话说,左表(A)的记录将会全部表示出来,而右表(B)只会显示符合搜索条件的记录(例子中为: A.aID = B.bID).

B表记录不足的地方均为NULL.

2.right join

sql语句如下:

select * from A

right join B

on A.aID = B.bID

结果如下:

aID     aNum     bID     bName

1     a20050111    1     2006032401

2     a20050112    2     2006032402

3     a20050113    3     2006032403

4     a20050114    4     2006032404

NULL     NULL     8     2006032408

(所影响的行数为 5 行)

结果说明:

仔细观察一下,就会发现,和left join的结果刚好相反,这次是以右表(B)为基础的,A表不足的地方用NULL填充.

3.inner join

sql语句如下:

select * from A

innerjoin B

on A.aID = B.bID

结果如下:

aID     aNum     bID     bName

1     a20050111    1     2006032401

2     a20050112    2     2006032402

3     a20050113    3     2006032403

4     a20050114    4     2006032404

结果说明:

很明显,这里只显示出了 A.aID = B.bID的记录.这说明inner join并不以谁为基础,它只显示符合条件的记录.


 

YOLO模型使用jupyterlab的方式进行预测/推理(示例) 首先相信很多使用过python的人都或多或少地了解过这个应用。是一个开源Web应用程序,可让用户创建和共享包含实时代码、公式、可视化和叙述文本的文档。用途包括:数据清理和转换、数值模拟、统计建模、等等。而Jupyter Lab则是Jupyter的下一代笔记本界面。是一个基于Web的交互式开发环境,用于Jupyter notebook、代码和数据。非常灵活,可支持数据科学、科学计算和机器学习领域的广泛工作。是可扩展和模块化的,其可编写插件来添加新组件并与现有组件相集成。 阅读详情

相关推荐

Abaqus子程序开发避坑指南:从UMESHMOTION到齿轮磨损分析实战

本文深入探讨Abaqus子程序开发中的关键技术与避坑指南,重点解析UMESHMOTION在齿轮磨损分析中的实战应用。从开发环境搭建、调试框架构建到性能优化和大规模计算,提供系统化的解决方案。通过真实案例展示如何避免内存泄漏、网格畸变等常见问题,并介绍数据驱动的磨损预测等前沿技术,帮助工程师提升仿真精度与效率。

weixin_30892037的博客 88

一张图告诉你SQL使用inner join,left join 等

sql之left join、right join、inner join的区别 union、union all的区别跳转https://www.cnblogs.com/logon/p/3748020.html SQL JOINS: Please refer the link :https://www.codeproject.com/Articles/33052/Visual-Rep...

阳光 27万+

航空机载总线网络概述

1.机载总线网络概述 现代战斗机的航空电子系统是航空电子技术经历了半个多世纪的漫长演变和不断进步的结果。航空电子系统结构的每次变化,其核心的机载总线网络技术也不断跨上新台阶,而且每次变革都能使飞机性能得到大幅提升。现代飞机的飞行与作战任务包括起飞、巡航、飞行控制、目标搜索、识别跟踪、火控计算、武器投射、制导、电子战、通信等,都需要航空电子系统承担,航空电子系统是现代战斗机的“大脑”和“神经中枢”,机载总线网络则是其关键的“神经网络”。在机载通讯领域发展过程中,具有代表性的典型总线有ARINC429、1553

qq_41854911的博客 1万+

深入理解SQL中的INNER JOIN操作

本文介绍了INNER JOIN的定义、使用场景、计算方法及与其他JOIN的比较。INNER JOIN是关系数据库中常用的操作,用于返回两个表中匹配的行,只有在连接条件满足时才返回数据。本文详细解释了INNER JOIN的语法及其在一对多、多对多关系中的应用,通过示例展示其结果集行数的计算方法。此外,文中还比较了INNER JOIN与LEFT JOIN、RIGHT JOIN、FULL JOIN和CROSS JOIN的异同,帮助读者理解不同类型的JOIN在实际查询中的应用场景。通过本文,读者能够掌握INNER

踏雨歌青春,诗酒趁年华 2万+

将CityScapes数据集转换为COCO格式的实例分割数据集

##¥##2019年结束前最后两小时,写出本年度最后一篇博客,不是博主没地方去跨年,实在是Coding乐趣无穷ahhhh ##¥## COCO数据集是研究实例分割的通用数据集,但是针对道路环境的数据较少,对于自动驾驶和移动机器人的应用并不适配。而提供道路环境的实例分割数据的数据集目前有KITTI、CityScapes、Apllo等,CityScapes算是应用较广,数据质量较高的一个,所以,本篇...

陆羽飞的博客 9940

【Altium designer】如何添加过孔阵列

按下图1指示,执行【Tool】菜单栏下【Via Stitching/Shielding】选项卡中的【Add Stitching to Net...】选项 图1 “添加过孔阵列”选项 点击【Add Stitching to Net...】选项后,会跳出一个窗口,让我们设置过孔阵列的参数信息,如下图2所示。 图2 过孔阵列参数设置 过孔阵列区域:勾选该选项框,即可绘制多边形区域; 过孔内径与焊盘直径:比如内径 【Hole Size】设为12mil,焊盘直径【Diameter】设为24mil; .

夜半少年的博客 2万+

利用inner join核对两张表的数据

1、inner join 浅尝 提到比对两张表的数据是否完全相同,很容易想到用inner join关联两张表去比较。Inner join的基本语法是: select collist from t1 inner join t2 on condition1 and condition2…; 简单理解就是对于t1表中的每一行,将它与t2表的每一行进行比较,检查他们是否满足关联条件,当满足关联条件时,inner join 将返回由t1和t2表中的列组成的新行,当无法满足关联条件时,将返回一个空结果。下面举个例子:

半路出家,立地为猿 3720

**Coffin-Manson 模型**在半导体功率循环测试中的理论背景、数学形式、应用场景,以及如何使用 **C#** 编程语言进行具体实现

Coffin-Manson 模型最初用于描述金属材料在低周疲劳(Low-Cycle Fatigue, LCF)下的寿命,后来被广泛应用于半导体功率器件(如 IGBT、MOSFET)的可靠性分析,特别是在功率循环测试中。如果你有具体数据(如 CSV 文件)、更复杂的模型要求(如 Bayerer 模型)或特定可视化需求,请提供,我可以进一步优化代码或添加功能!以下代码实现基本模型 ( N_f = A \cdot (\Delta T_j)^{-n} ) 的拟合,生成拟合曲线并预测寿命。我会结合你之前提到的。

专注于前沿技术的探索与实践,热衷于从代码逻辑、架构设计到行业应用等多维度深挖技术本质。期待在技术之路上与你共同成长~ 481

inner join 与 left join 之间的区别

nner join 与 left join 之间的区别 关于inner join 与 left join 之间的区别,以前以为自己搞懂了,今天从前端取参数的时候发现不是预想中的结果,才知道问题出在inner join 上了。 需求是从数据库查数据,在前端以柱形图的形式展现出来,查到的数据按行业分组,显示每个行业的户数及户数占比,涉及到的字段有A表的用户数、总用户数和B表的行业名称。本来是不管查不查的到数据,在X轴都应该显示行业名称的,结果是X、Y轴都没有任何数据显示。问题就是我用错了联结方式。 一、sql的

seeseeyoua的博客 166

基于YOLOv8的城市违建识别系统:从数据集构建到UI界面实现

YOLOv8是Ultralytics公司于2023年推出的最新一代YOLO(You Only Look Once)系列目标检测算法。更高效的骨干网络设计改进的锚框机制更精确的损失函数支持分类、检测、分割等多任务YOLOv8特别适合像违建识别这样的实时检测任务,能够在保持高精度的同时实现快速推理。

YOLO 674

OpenClaw第2章:快速安装

本章将手把手教你安装 OpenClaw。

Maynor的博客 3236

left join 临时表_MySQL中的SQL语句的链表查询,约束,表结构的说明

这一篇主要写多表查询 SQLa表数据b表数据第一》 INNER JOIN : 关键字在表中存在至少一个匹配时返回行。语法:SELECT 字段名(s) FROM 表1 INNER JOIN 表2 ON 表1.字段名=表2.字段名;或:SELECT 字段名(s) FROM table1 JOIN 表1ON 表1.字段名=表2.字段名;注:NNER JOIN 与 JOIN 是相同的。题目说明:查找方式是...

weixin_39846898的博客 3164

Oracle EBS AP发票被预付款核算创建会计科目时间超长

在客户职能部门的水电、通信和物业等费用统一管理或对接部门报销时,用户将所有费用分摊到各个末级部门,导致AP发票行数高达上千行。这引发了以下问题:1)用户过账时,创建会计科目的请求执行超过20小时未完成,只能手动取消;2)取消请求后,系统一直处于回滚状态;3)通过SQL脚本分析,发现预付发票核销分配行表记录数量庞大,单笔AP发票记录高达90多万条,类似发票共有5笔。

陈显平的专栏-Oracle EBS 352

inner join on、right join on 和left join on

inner join on、right join on 和left join on的区别和使用场景

m0_65347933的博客 934

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

SQL--多表查询(多表联查,如:LEFT JOIN、LEFT JOIN、LEFT JOIN、UNION ALL等)

1、常见多表连接的三种方式 -- LEFT JOIN 左连接 查询左表所有数据和右表与左表属性值相等的记录 SELECT * FROM TABELONE A LEFT JOIN TABELTWO B ON A.id = B.id -- RIGHT JOIN 右连接 查询右表所有数据和右表与左表属性值相等的记录 SELECT * FROM TABELONE A RIGHT JOIN TABELTWO B ON A.id = B.id -- NNER JOIN 内连接 查询左表和右表与左表属性值相等的记

两点 2744

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

【转】inner join,left out join,right out join三者的不同用法

jion 语句有三种,inner join, left outer join 和 right outer join 都可以简写,分别为jion,left join,right jion。 jion语句可以用来组合两个表中的记录,只要在公共字段之中有相符的值即可,该语句联合两个表查询得到的结果是可以添加新的数据,可以把它看成将两个具有相关内容的表联接在一起新生成的表,而一般的select...

dieduo4596的博客 241

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

sql高级--join

为了得到完整的结果,我们需要从两个或更多的表中获取结果。我们就需要执行 join"Persons" 表:"Id_P" 列是 Persons 表中的的主键Id_P LastName FirstName Address City1 Adams John Oxford Street London2 Bush George Fifth Avenue New York3 Carter T...

kang123488的博客 262

Spring Boot深度集成第三方组件:从配置原理到生产级实践

在微服务架构和分布式系统开发中,中间件集成是核心技术环节。其原理在于通过客户端组件与远程服务进行通信,实现缓存、消息、分布式锁等通用能力。这项技术的核心价值在于提升系统性能、保证数据一致性与高可用性。典型的应用场景包括电商秒杀、实时数据同步和分布式任务调度。然而,集成过程常因对连接池管理、超时重试等底层机制理解不足而引发线上故障。本文以Spring Boot项目集成多功能客户端为例,深入剖析配置原理与运行时行为,并提供一套涵盖异常处理、健康检查与系统性排错的生产级解决方案,旨在帮助开发者规避因‘走马观花’式

weixin_34296641的博客 382

MySQL05: 表合并

获取左表(Prices)的所有记录,包括与右表(UnitsSold)匹配的记录以及左表独有的记录(右表部分为 NULL)。RIGHT JOIN与LEFT JOIN相反,它返回右表(右边的表)的所有记录,以及左表中与右表相匹配的记录。如果左表中的某行在右表中找不到匹配项,或者右表中的某行在左表中找不到匹配项,那么这些行都不会出现在结果集中。LEFT JOIN返回左表(左边的表)的所有记录,以及右表中与左表相匹配的记录。不过,需要注意的是,这样的条件会直接影响到连接操作,确保它符合你的查询意图。

生信探索 558

MySQL编程题02--where多表查询和inner join区别

表test1 a,b,d;表test2 a,c,f 查找出满足a=a,b=b and c=''的字段a、c、f select tb1.a,tb1.b,tb2.f from test1 tb1 inner join test2 tb2 on tb1.a=tb2.a and tb1.b=tb2.b and tb2.c='';   or select tb1.a,tb1.b,tb2.f f...

weixin_34044273的博客 192

db2查询表结构语句_MySQL中的SQL语句的链表查询,约束,表结构的说明

这一篇主要写多表查询 SQLa表数据b表数据第一》 INNER JOIN : 关键字在表中存在至少一个匹配时返回行。语法:SELECT 字段名(s) FROM 表1 INNER JOIN 表2 ON 表1.字段名=表2.字段名;或:SELECT 字段名(s) FROM table1 JOIN 表1ON 表1.字段名=表2.字段名;注:NNER JOIN 与 JOIN 是相同的。题目说明:查找方式是...

weixin_39867509的博客 576

oracle查询表结构的变化_MySQL中的SQL语句的链表查询,约束,表结构的说明

这一篇主要写多表查询 SQLa表数据b表数据第一》 INNER JOIN : 关键字在表中存在至少一个匹配时返回行。语法:SELECT 字段名(s) FROM 表1 INNER JOIN 表2 ON 表1.字段名=表2.字段名;或:SELECT 字段名(s) FROM table1 JOIN 表1ON 表1.字段名=表2.字段名;注:NNER JOIN 与 JOIN 是相同的。题目说明:查找方式是...

weixin_35979889的博客 308

mysql 链表数据表设计_MySQL中的SQL语句的链表查询,约束,表结构的说明

这一篇主要写多表查询 SQLa表数据b表数据第一》 INNER JOIN : 关键字在表中存在至少一个匹配时返回行。语法:SELECT 字段名(s) FROM 表1 INNER JOIN 表2 ON 表1.字段名=表2.字段名;或:SELECT 字段名(s) FROM table1 JOIN 表1ON 表1.字段名=表2.字段名;注:NNER JOIN 与 JOIN 是相同的。题目说明:查找方式是...

weixin_33213367的博客 354

JOIN 解析(INNER/LEFT/RIGHT/FULL/CROSS)

多表查询常涉及到到表连接的问题,主要涉及到内连接:INNER JOIN,外连接:LEFT JOIN(or LEFT OUTER JOIN),RIGHT JOIN(or RIGHT OUTER JOIN),FULL JOIN和交叉...

cui672439734的博客 292

plsql查询表结构_MySQL中的SQL语句的链表查询,约束,表结构的说明

这一篇主要写多表查询 SQLa表数据b表数据第一》 INNER JOIN : 关键字在表中存在至少一个匹配时返回行。语法:SELECT 字段名(s) FROM 表1 INNER JOIN 表2 ON 表1.字段名=表2.字段名;或:SELECT 字段名(s) FROM table1 JOIN 表1ON 表1.字段名=表2.字段名;注:NNER JOIN 与 JOIN 是相同的。题目说明:查找方式是...

weixin_34540432的博客 463
上一篇: python开发之个微批量删除好友
下一篇: go开发之个人微信号机器人开发
普通网友
博客等级 码龄4年 283粉丝 122原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值