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 ...
随机推荐
- MS17-010漏洞利用
MS17-010漏洞利用 1.安装虚拟机win7 x64,实现利用ms17-010实现对其win7 x64主机开始渗透,查看该主机信息,打开远程桌面,抓取用户名和密码并破译,创建一个 : 学号.txt ...
- 【Tool】MySQL卸载
MySQL卸载 2019-11-07 13:23:00 by冲冲 1.停止MySQL服务 右击"计算机" -- "管理" -- 左击"服务和应用程 ...
- uniapp如何在当前页面获取上个页面的变量、方法
getCurrentPages() getCurrentPages() 函数用于获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面. 注意: getCurrent ...
- [AGC002D] Stamp Rally
确实有想到重构树,不过没有继续下去的思路. 可能是对重构树的性质不太懂. 这种题目我们可以二分答案,考虑怎么\(check\)呢,整体二分+并查集,建出重构树,找去第一个小于这个数的方点,查询他的子树 ...
- CF1202E You Are Given Some Strings...
题目传送门. 题意简述:给出 \(t\) 与 \(s_{1,2,\cdots,n}\).求对于所有 \(i,j\in[1,n]\),\(s_i+s_j\) 在 \(t\) 中出现次数之和. 如果只有 ...
- 间断有限元h自适应处理方法
细分单元 function Hrefine2D(refineflag) 根据refineflag变量细分单元,其中refineflag变量大小为 [Kx1],需要细分单元标记为1,不需要单元为0. 根 ...
- [Linux] 非root安装Lefse软件及其数据分析
说明 Lefse软件是宏组学物种研究常用软件,一般大家用在线版本即可.但要搭建在Linux集群环境中有点烦,记录一下折腾过程. 安装 这个软件是python2写的,因此假设我已经安装好了较高版本的py ...
- 用jquery的prop方法操作checkbox
prop设置checkbox选中 $('#checkbox-id').prop("checked",true) 判断checkbox是否选中,if ($('#checkbox-id ...
- (数据科学学习手札132)Python+Fabric实现远程服务器连接
本文示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 日常工作中经常需要通过SSH连接到多台远程 ...
- 分布式服务治理框架Dubbo的前世今生及应用实战
Dubbo的出现背景 Dubbo从开源到现在,已经出现了接近10年时间,在国内各大企业被广泛应用. 它到底有什么魔力值得大家去追捧呢?本篇文章给大家做一个详细的说明. 大规模服务化对于服务治理的要求 ...