连接操作_连接类型_left | 学习笔记

简介: 快速学习连接操作_连接类型_left

开发者学堂课程【大数据 Spark 2020版(知识精讲与实战演练)第三阶段:连接操作_连接类型_left】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/690/detail/12100


连接操作_连接类型_left

 

连接类型

全外连接就是由左边数据集没有连接上的数据、右边数据集没有连接上的数据以及中间连接上的数据这三部分数据所组成的结果集。

如果只包含左边没有连接上的数据和中间连接上的数据叫做左外连接。

如果只包含右边没有连接上的数据和中间连接上的数据叫做右外连接。

1.左外连接

左外连接是全外连接的一个子集,全外连接中包含左右两边数据集没有连接上的数据,而左外连接只包含左边数据集中没有连接上的数据,如图所示:

image.png

2.右外连接

右外连接和左外连接刚好相反,左外是包含左侧未连接的数据,和两个数据集中连接上的数据,而右外是包含右侧未连接的数据,和两个数据集中连接上的数据,如图:

image.png

接下来通过代码介绍左外连接和右外连接:

@Test

def leftRight() : unit = {

//左连接

person.join(cities,

person.col( colName = "cityId" ) === cities.col( colName = "id""),

joinType = "left")

.show()

/sql 语句

spark.sql( sqlText = "select p.id, p.name,c.name " +

"from person p left join cities c ”+

"on p.cityId = c.id" )

.show()

//右连接

person.join(cities,

person.col( colName = "cityId" ) === cities.col( colName = "id""),

joinType = "right")

.show()

/sql 语句

spark.sql( sqlText = "select p.id, p.name,c.name " +

"from person p right join cities c ”+

"on p.cityId = c.id" )

.show()

}

运行代码得到结果集:

左外连接结果集:

image.png

image.png

左外连接显示出左编数据集 Danial 的数据。

右外连接结果集:

image.png

右外连接结果集显示的是右边数据集未被连接的 city,shanghai。

我们所说的连接方式都包含连接条件,连接条件是不变的,在同样的连接条件下,结果集的表现有几种情况就是所说的几种连接类型。

相关文章
|
3天前
|
SQL 分布式计算 NoSQL
MaxCompute产品使用合集之concat ws函数如何解决某一参数为空导致返回值为空的问题
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
5月前
【Node】—接收参数 插入数据 实现注册功能
【Node】—接收参数 插入数据 实现注册功能
|
5月前
|
JSON JavaScript 前端开发
一个由服务端返回的long值改变引发的血案
一个由服务端返回的long值改变引发的血案
40 0
|
11月前
|
弹性计算 安全 关系型数据库
介绍两种连接方式
介绍两种连接方式
137 1
多IP情况下如何获取本地的第一个IP及如何调整本地的第一个IP
我分析了业务的代码,OPTIONS中的Via中的用的是采用gethostbyname获取的。这意味着该函数获取的系统的默认的第一个IP。如果操作系统有多个IP,如何设置它们的优先级呢?
多IP情况下如何获取本地的第一个IP及如何调整本地的第一个IP
连接(INNER JOIN)实例
连接(INNER JOIN)实例
65 0
|
SQL 大数据 API
连接操作_连接类型_fullouter | 学习笔记
快速学习连接操作_连接类型_fullouter
76 0
连接操作_连接类型_fullouter | 学习笔记
|
SQL 大数据 开发者
连接操作_连接类型_inner | 学习笔记
快速学习连接操作_连接类型_inner
67 0
连接操作_连接类型_inner | 学习笔记
|
SQL 分布式计算 大数据
连接操作_连接类型_cross | 学习笔记
快速学习连接操作_连接类型_cross
99 0
连接操作_连接类型_cross | 学习笔记