Table.NestedJoin合并…Join(Power Query 之 M 语言)
数据源:
“销量表”和“部门表”两个查找表,每个表中都有“姓名”列
目标:
根据“姓名列”将“部门表”中对应的部门合并到“销量表”中。
操作过程:
选取“销量表”》【主页】》【合并查询】/【将查询合并为新查询】》选取“部门表”》选取匹配列》【确定】

M公式:
= Table.NestedJoin( 表1, {"表1匹配列1",...,"表1匹配列n"}, 表2, {"表2匹配列1",...,"表2匹配表n"}, "新列名", 匹配函数)
匹配函数:
JoinKind.LeftOuter / 1 / 缺省:左外部
JoinKind.RightOuter / 2:右外部
JoinKind.FullOuter /3:完全外部
JoinKind.Inner / 0:内部
JoinKind.LeftAnti / 4:左反
JoinKind.RightAnti / 5:右反
JoinSide.Left:相当于内部的效果
JoinSide.Right:相当于左外部的效果
扩展:
左外部合并查询
= Table.AddJoinColumn( 表1, {"表1匹配列1",...,"表1匹配列n"}, 表2, {"表2匹配列1",...,"表2匹配表n"}, "新列名")
模糊匹配的合并查询
= Table.FuzzyNestedJoin( 表1, {"表1匹配列1",...,"表1匹配列n"}, 表2, {"表2匹配列1",...,"表2匹配表n"}, "新列名", 匹配函数, 匹配选项)
匹配选项:[IgnoreCase=true / false, IgnoreSpace=true / false, NumberOfMatches=数字, Threshold=0到1之间的数字, TransformationTable=表名]
IgnoreCase:区分大小写
IgnoreSpace:忽略空格
NumberOfMatches:指定可为每个输入行返回的最大匹配行数
Threshold:指定两个值将按其进行匹配的相似性分数。
TransformationTable:允许根据自定义值映射来匹配记录的表
一步到位的合并查询
= Table.Join( 表1, {"表1匹配列1",...,"表1匹配列n"}, 表2, {"表2匹配列1",...,"表2匹配表n"}, 匹配函数)
各表匹配列名不重复时才可加上匹配函数
一步到位的模糊匹配合并查询
= Table.FuzzyJoin( 表1, {"表1匹配列1",...,"表1匹配列n"}, 表2, {"表2匹配列1",...,"表2匹配表n"}, 匹配函数, 匹配选项)
Table.NestedJoin合并…Join(Power Query 之 M 语言)的更多相关文章
- M函数目录(Power Query 之 M 语言)
2021-12-11更新 主页(选项卡) 管理列(组) 选择列 选择列Table.SelectColumns 删除列 删除列Table.RemoveColumns 删除其他列Table.SelectC ...
- Excel.CurrentWorkbook数据源(Power Query 之 M 语言)
数据源: 任意超级表 目标: 将超级表中的数据加载到Power Query编辑器中 操作过程: 选取超级表中任意单元格(选取普通表时会自动增加插入超级表的步骤)>数据>来自表格/区域 M公 ...
- 自定义函数(Power Query 之 M 语言)
数据源: 任意工作簿 目标: 使用自定义函数实现将数据源导入Power Query编辑器 操作过程: PowerQuery编辑器>主页>新建源>其他源>空查询 编辑栏内写入公式 ...
- M语言的写、改、删(Power Query 之 M 语言)
M语言基本上和其他语言一样,用敲键盘的方式写入.修改.删除,这个是废话. M语言可以在[编辑栏]或[高级编辑器]里直接写入.修改.删除,这个也是废话. M语言还有个地方可以写入.修改.删除,就是[自定 ...
- M语言的藏身之地(Power Query 之 M 语言)
M函数和M公式是Power Query专用的函数与公式,M代码是Power Query专用的用于实现查询功能的代码.M函数公式和M代码统称M语言. 查看M公式:[编辑栏] 查看方法:在Power Qu ...
- Table.CombineColumns合并…Combine…(Power Query 之 M 语言)
数据源: 任意表,表中列数超过两列 目标: 其中两列合并为一列 操作过程: 选取两列>[转换]>[合并列]>选取或输入分隔符>输入新列名>[确定] M公式: = T ...
- Table.Skip删除前面N….Skip/RemoveFirstN(Power Query 之 M 语言)
数据源: "姓名""基数""个人比例""个人缴纳""公司比例""公司缴纳"&qu ...
- Table.Combine追加…Combine(Power Query 之 M 语言)
数据源: 销量表和部门表 目标: 其中一表的数据追加到另一表后面,相同列直接追加,不同列增加新列 操作过程: 选取销量表>[主页]>[追加查询]/[将查询追加为新查询]>选择要追加的 ...
- Table.ReorderColumns移动…Reorder…(Power Query 之 M 语言)
数据源: 至少两列 目标: 列顺序重新排列 操作过程: 选取待移动的列>鼠标拖放列标题 选取待移动的列>[转换]>[移动]>选取 M公式: = Table.ReorderCo ...
随机推荐
- [cf611H]New Year and Forgotten Tree
首先,来构造这棵树的形态 称位数相同的点为一类点,从每一类点中任选一个点,具有以下性质: 1.每一类中选出的点的导出子图连通(是一颗树) 2.每一条边必然有一个端点属于某一类中选出的点 (关于&quo ...
- [loj3313]序列
定义$C_{i}$表示令$i,i+1,i+2,...$的位置减1的操作,定义$I_{i}$表示令$i,i+2,i+4,...$的位置减1的操作 结论1:一定存在一种最优解使得$\forall i$不同 ...
- [bzoj3524]Couries
首先用到bzoj2456的做法,因为要求这个数出现次数超过了一半,如果其与不同的数两两相消的话最终一定会剩下自身(如果不保证存在可能会剩下别的,但保证存在了只会剩下自身),然后再用可持久化线段树维护即 ...
- [bzoj4650]优秀的拆分
由于字符串是AABB的形式,枚举AA和BB中间的位置,分别考虑AA和BB的数量,乘起来sigma一下即为答案以下考虑AA的情况(BB同理),枚举A的长度,然后按照这个长度分为若干块,那么每一个A一定可 ...
- 百胜中国使用Rainbond实现云原生落地的实践
百胜中国使用Rainbond实现云原生落地的实践 关于百胜中国 自从1987年第一家餐厅开业以来,截至2021年第二季度,百胜中国在中国大陆的足迹遍布所有省市自治区,在1500多座城镇经营着11023 ...
- 深入理解Redis 数据结构—双链表
在 Redis 数据类型中的列表list,对数据的添加和删除常用的命令有 lpush,rpush,lpop,rpop,其中 l 表示在左侧,r 表示在右侧,可以在左右两侧做添加和删除操作,说明这是一个 ...
- Git的基础入门
Git --everything-is-local 查阅文档 Git是一个免费的开源 分布式版本控制系统,旨在快速高效地处理从小型到大型项目的所有内容. Git易于学习, 占地面积小,具有闪电般的快速 ...
- [Noip 2018][标题统计 龙湖斗 摆渡车 对称二叉树]普及组题解
啊喂,都已经9102年了,你还在想去年? 这里是一个Noip2018年PJ第二题打爆的OIer,错失省一 但经过了一年,我学到了很多,也有了很多朋友,水平也提高了很多,现在回看当时: 今年的Noip ...
- Apollo配置中心中的Namespace
前言:Apollo(阿波罗)是携程研发的开源配置管理中心,能够集中管理应用不同环境.不同集群的配置.同一环境统一集群的配置下有namespace概念,具体信息官方文档如下: namespace是配置项 ...
- python-django-聚合与统计
l例子1: 这里的values_list 相当于SQL语句里面的GROUP BY的功能,但是返回的是一个元组 要实现示例当中的直接用,与数据库格式有关将模型设计得更加完美 模型: 注意related_ ...