用 google 查询语言重现左连接

Reproduce a left join in google query language

我正在尝试从 table 中获取数据并将其添加到另一个查询的结果中,这些东西具有共同的 ID 和名称。

这里是查询:

=query(Calculation!A1:G," select G,count(A) group by G")

我想创建一个新的查询来包含这个查询。像这样的东西 "QueryResult.id" 是来自查询的 G 而 "Talents" 是加入它的 sheet :

  SELECT A, B, C, D, E, F, G FROM Talents left join QueryResult ON Talents.id = QueryResult.id

问题是 google 查询语言中没有连接。

虽然我可能会加入一些 google 脚本,但对于像这样的简单操作来说似乎很复杂。

这里的最终目标是列出所有才能以及此人拥有的共同能力。

在天赋sheet中VLookup查询结果不行吗?查询的 ID 行是唯一的,因此应该不会造成任何问题。

如果你想要一个真正的左连接,不管简短的回答是没有快速的方法来做到这一点。

我有一个 project 运行,它为我编写的 JS 对象交互库提供前端。
前端本身仍在大量开发中,但连接和聚合正在运行,尽管语义和输出可能会发生变化。

当您将所有内容粘贴到传播的脚本中时sheet,鉴于项目的当前状态,您会编写类似这样的内容。
我将技能中的字段命名为 F1 到 F7

=
TABLE_RENAME(
TABLE_SELECT(
TABLE_JOIN(
  Talents!A:G,
  TABLE_AGG(Calculation!A1:G, "F7", "count", "n", "F1"),
  "left", "ID", "F7"),
{"l.Talent", "l.Tier", "l.ID", "r.n"}),
{"Talent", "Tier", "ID", "n"})