Power Query合并查询的各种联结种类,对比SQL中各种join连接 | 您所在的位置:网站首页 › sql两个表合并查询的函数 › Power Query合并查询的各种联结种类,对比SQL中各种join连接 |
一、两个数据表进行连接合并的七种情况 使用韦恩图分析两个集合的合并(即Power Query中对表的合并查询),可得出有7种情况。(动手数一下,数不出第8种情况的了) 1、左外部链接:匹配A、B两个数据集,仅返回A中存在的数据。 2、右外部连接:匹配A、B两个数据集,仅返回B中存在的数据。 3、完全外部连接:匹配A、B两个数据集,仅返回全部的数据。 4、内部连接:匹配A、B两个数据集,仅返回A、B均存在的数据。 5、左反连接:匹配A、B两个数据集,仅返回A中存在,同时在B中不存在的数据集。 6、右反连接:匹配A、B两个数据集,仅返回B中存在,同时在A中不存在的数据集。 7、全反连接:匹配A、B两个数据集,仅返回只在A或只在B中存在的数据集。 二、七种连接类型的SQL实现 左外部连接:select * from Table1 left join Table2 on Table1.key = Table2.key 右外部连接:select * from Table1 right join Table2 on Table1.key = Table2.key 完全外部连接:select * from Table1 full outer join Table2 on Table1.key = Table2.key 内部连接:select * from Table1 inner join Table2 on Table1.key = Table2.key 左反连接:select * from Table1 left join Table2 on Table1.key = Table2.key where Table2.key is null 右反连接:select *from Table1 right join Table2 on Table1.key = Table2.key where Table1.key is null 全反连接:select * from Table1 full outer join Table2 on Table1.key = Table2.key where Table1.key is null or Table2.key is null 三、七种连接类型的Power Query的合并查询 Power Query的合并查询中,只提供了六种连接类型。(可能认为全反连接,匹配A、B两个数据集,仅返回只在A或只在B中存在的数据集,等于没有匹配出任何内容) 例子1: 会议的邀请记录,和参会记录。邀请了A、B、C、D、E五人参加。最终参会时是D、E、F、G四人(没有邀请也能参加)。 邀请名单 邀请时间 A 2020/2/2 B 2020/2/3 C 2020/2/4 D 2020/2/5 E 2020/2/6 参加名单 参加时间 D 2020/3/2 E 2020/3/2 F 2020/3/3 G 2020/3/3 两个表为1对1的关系,每个人在每个表最多只会出现一次。部分连接的结果如下。 左外部连接: 右外部连接: 完全外部连接: 例子2:销售记录表、产品信息表 销售单号 产品编号 销量 销售额 S001 A1 1 200 S001 A2 1 100 S002 A2 1 100 S002 A3 1 50 S003 A3 1 50 产品编号 产品名称 单价 A1 儿童车 200 A2 奶瓶 100 A3 座椅 50 两个表为N对1的关系,销售记录里面包含了多个产品。且每个产品编号,在产品信息表中肯定是存在。同时每个产品都有销售记录。这样的情况下,左外部连接、右外部连接,实际的结果是一样的。
|
CopyRight 2018-2019 实验室设备网 版权所有 |