跳到正文

CSV 表关联(VLOOKUP)

CSV Join

按键列做内连接、左连接、右连接或全连接,并把没匹配上的行单独列出来。

两个文件的 VLOOKUP,外加 VLOOKUP 从不告诉你的部分:哪些键没匹配上,以及它们差点匹配上了什么。在构建任何东西之前,它先显示关联会产出多少行,这是阻止一个多对多的键把两千行变成四十万行的东西。

🔒 完全在你的浏览器里运行csvjoinmergetable

左表

把左表拖进来

在这个标签页里读取,不会上传。能认出韩文版、日文版、中文版和西文版 Excel 存出来的文件(CP949、Shift_JIS、GBK、Windows-1252)。

右表

把右表拖进来

在这个标签页里读取,不会上传。能认出韩文版、日文版、中文版和西文版 Excel 存出来的文件(CP949、Shift_JIS、GBK、Windows-1252)。

怎么用

  1. 拖入两张表

    左表和右表。哪个是哪个对左关联很要紧,左关联里每一个左表行不管有没有匹配上都会保留。

  2. 在两边各选一个键列

    每个选择器下面,工具会说明那一列有多少个不同的键、有没有重复。两边都重复的键就是会成倍放大的那个。

  3. 决定键怎么比较

    去掉首尾空格和忽略大小写默认打开,因为大多数没匹配上都是它们造成的。折叠全角字符对从 PDF 复制出来的文本有帮助。忽略标点默认关闭,因为它可能把两家确实不同的公司合并起来。

  4. 运行之前先读计划

    未匹配数、结果行数,以及一份差点匹配上的键的清单,附上差了几个字符。差一个字符是笔误,不是另一个客户。

常见问题

我要哪种关联?

几乎总是左关联。它保留你主表的每一行,把找到的填进去,这正是 VLOOKUP 做的事。内关联丢掉没匹配上的行,报表通常就是这样悄悄丢记录的。

为什么结果大了这么多?

键在两边都重复,所以带那个键的每一个左表行都和带那个键的每一个右表行配对。三乘四是十二。先给一边去重,或者换一个在那边唯一的键。

全都没匹配上

先看差点匹配的清单。常见原因有尾部空格、macOS 把韩文存成分离的字母(jamo)、PDF 里来的全角数字,以及一边把 id 读成数字、另一边读成文本,于是 007 遇上了 7。

空键会互相匹配吗?

会,发生时工具会警告并说明产出了多少行。在 SQL 里 NULL 不等于 NULL;这里空单元格等于空单元格,这更常是表格用户预期的,也更常是一个错误。

可以从这些接进来

接下来

这些工具吃得下当前工具的产出,结果可以直接送过去。