SparkSql Join Types详解

本文详细介绍了Spark SQL中的各种JOIN类型,包括INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL JOIN、CROSS JOIN、SEMI JOIN和ANTI JOIN,并通过案例实战展示了每种JOIN类型的使用,帮助读者理解它们的区别和应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

我们都知道join是根据某些条件把两行数据关联起来,而且也熟悉常用的一些join type,如inner、left、right等等,但是有些人可能对semi、anti或者一些语法的缩写和全写搞的不是很清楚,这篇博客就用简单明了的案例把这些都讲明白。

Join语法

relation { [ join_type ] JOIN [ LATERAL ] relation [ join_criteria ] | NATURAL join_type JOIN [ LATERAL ] relation }
  1. 参数
  • relation
    指定要进行join两个或多个表、dataset
  • join_type
    指定关联类型

    [ INNER ] | CROSS | LEFT [ OUTER ] | [ LEFT ] SEMI | RIGHT [ OUTER ] | FULL [ OUTER ] | [ LEFT ] ANTI

  • join_criteria
    指定两个表关联的字段,如 on t1.id = t2.id
  1. join types
  • inner join
    in

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SunnyRivers

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值