Google 对 2 个表进行汇总的工作表外连接
Google Sheets outer join on 2 tables that get summarised
我正在编写一份报告,需要在 google sheet 中
Sheet 1 包含案例所有者打开和拥有的所有当前案例,每个案例 1 行,每个案例所有者每月多个案例(样本 sheet 有 4 个月的数据)
Sheet 2 包含所有已关闭的案例以及关闭案例的人,每个案例 1 行,每个案例所有者每月多个案例(样本 sheet 有 4 个月的数据)
开放 sheet 中可能存在在封闭 sheet 中不存在的案例所有者
封闭 sheet 中可能存在在开放 sheet
中不存在的案例所有者
我知道如何创建一个分别汇总两个原始数据的 query() 函数 - 我希望能够做的是查询一个连接的 table 以在 1 [=50= 中获得打开和关闭的案例].
在示例文件中,A5 和 F5 中有 2 个 table。这些是我在查看 query() 函数的工作原理——我想要的实际报告在 K5
中
我遇到的困难是将这些汇总到一份显示过去 3 个月数据的摘要报告中
澄清一下——我想做的是有一个函数可以从 2 RAW sheets 查询并创建摘要报告
示例sheet应该更清楚地解释我需要做什么
https://docs.google.com/spreadsheets/d/1QEd9ZauY0YrbRWNu35tDTk6SkL1PaIZLtSOCd1A2fDY/edit?usp=sharing
OPEN 案例的输出:
=query('Raw Data'!A:N,"Select B, count(A) where N >= date '2020-02-01' group by B pivot N")
已关闭案例的输出
=query('Raw Data - Closed'!A:N,"Select A, count(B) where H >= date '2020-02-01' AND H <= date '2020-04-01' group by A pivot H")
有什么指点吗?
尝试:
=ARRAYFORMULA(SUBSTITUTE(TRANSPOSE(QUERY(TRANSPOSE({{
IF(ISNUMBER(A5:D5*1), A5:D5&" A"&A3, A5:D5); A6:D},
IFNA(VLOOKUP(A5:A, {IF(ISNUMBER(F5:I5*1), F5:I5&" "&F3, F5:I5); F6:I},
COLUMN(G5:I5)-(COLUMN(F5)-1), 0))}), "order by Col1", 1)), " AOpen", " Open"))
=ARRAYFORMULA(SUBSTITUTE(TRANSPOSE(QUERY(TRANSPOSE({{
IF(ISNUMBER(
QUERY('Raw Data'!A:N, "select B,count(A) where N >= date '2020-02-01' group by B pivot N limit 0")*1),
QUERY('Raw Data'!A:N, "select B,count(A) where N >= date '2020-02-01' group by B pivot N limit 0")&" AOpen",
QUERY('Raw Data'!A:N, "select B,count(A) where N >= date '2020-02-01' group by B pivot N limit 0")); QUERY(
QUERY('Raw Data'!A:N, "select B,count(A) where N >= date '2020-02-01' group by B pivot N"), "offset 1", 0)},
IFNA(VLOOKUP(INDEX(
QUERY('Raw Data'!A:N, "select B,count(A) where N >= date '2020-02-01' group by B pivot N"),,1), {IF(ISNUMBER(
QUERY('Raw Data - Closed'!A:N, "select A,count(B) where H >= date '2020-02-01' and H <= date '2020-04-01' group by A pivot H limit 0")*1),
QUERY('Raw Data - Closed'!A:N, "select A,count(B) where H >= date '2020-02-01' and H <= date '2020-04-01' group by A pivot H limit 0")&" Closed",
QUERY('Raw Data - Closed'!A:N, "select A,count(B) where H >= date '2020-02-01' and H <= date '2020-04-01' group by A pivot H limit 0")); QUERY(
QUERY('Raw Data - Closed'!A:N, "select A,count(B) where H >= date '2020-02-01' and H <= date '2020-04-01' group by A pivot H"), "offset 1", 0)},
SEQUENCE(1, COLUMNS(
QUERY('Raw Data - Closed'!A:N, "select A,count(B) where H >= date '2020-02-01' and H <= date '2020-04-01' group by A pivot H"))-1, 2, 1), 0))}), "order by Col1", 1)), " AOpen", " Open"))
我正在编写一份报告,需要在 google sheet 中 Sheet 1 包含案例所有者打开和拥有的所有当前案例,每个案例 1 行,每个案例所有者每月多个案例(样本 sheet 有 4 个月的数据) Sheet 2 包含所有已关闭的案例以及关闭案例的人,每个案例 1 行,每个案例所有者每月多个案例(样本 sheet 有 4 个月的数据)
开放 sheet 中可能存在在封闭 sheet 中不存在的案例所有者 封闭 sheet 中可能存在在开放 sheet
中不存在的案例所有者我知道如何创建一个分别汇总两个原始数据的 query() 函数 - 我希望能够做的是查询一个连接的 table 以在 1 [=50= 中获得打开和关闭的案例]. 在示例文件中,A5 和 F5 中有 2 个 table。这些是我在查看 query() 函数的工作原理——我想要的实际报告在 K5
中我遇到的困难是将这些汇总到一份显示过去 3 个月数据的摘要报告中
澄清一下——我想做的是有一个函数可以从 2 RAW sheets 查询并创建摘要报告
示例sheet应该更清楚地解释我需要做什么
https://docs.google.com/spreadsheets/d/1QEd9ZauY0YrbRWNu35tDTk6SkL1PaIZLtSOCd1A2fDY/edit?usp=sharing
OPEN 案例的输出:
=query('Raw Data'!A:N,"Select B, count(A) where N >= date '2020-02-01' group by B pivot N")
已关闭案例的输出
=query('Raw Data - Closed'!A:N,"Select A, count(B) where H >= date '2020-02-01' AND H <= date '2020-04-01' group by A pivot H")
有什么指点吗?
尝试:
=ARRAYFORMULA(SUBSTITUTE(TRANSPOSE(QUERY(TRANSPOSE({{
IF(ISNUMBER(A5:D5*1), A5:D5&" A"&A3, A5:D5); A6:D},
IFNA(VLOOKUP(A5:A, {IF(ISNUMBER(F5:I5*1), F5:I5&" "&F3, F5:I5); F6:I},
COLUMN(G5:I5)-(COLUMN(F5)-1), 0))}), "order by Col1", 1)), " AOpen", " Open"))
=ARRAYFORMULA(SUBSTITUTE(TRANSPOSE(QUERY(TRANSPOSE({{
IF(ISNUMBER(
QUERY('Raw Data'!A:N, "select B,count(A) where N >= date '2020-02-01' group by B pivot N limit 0")*1),
QUERY('Raw Data'!A:N, "select B,count(A) where N >= date '2020-02-01' group by B pivot N limit 0")&" AOpen",
QUERY('Raw Data'!A:N, "select B,count(A) where N >= date '2020-02-01' group by B pivot N limit 0")); QUERY(
QUERY('Raw Data'!A:N, "select B,count(A) where N >= date '2020-02-01' group by B pivot N"), "offset 1", 0)},
IFNA(VLOOKUP(INDEX(
QUERY('Raw Data'!A:N, "select B,count(A) where N >= date '2020-02-01' group by B pivot N"),,1), {IF(ISNUMBER(
QUERY('Raw Data - Closed'!A:N, "select A,count(B) where H >= date '2020-02-01' and H <= date '2020-04-01' group by A pivot H limit 0")*1),
QUERY('Raw Data - Closed'!A:N, "select A,count(B) where H >= date '2020-02-01' and H <= date '2020-04-01' group by A pivot H limit 0")&" Closed",
QUERY('Raw Data - Closed'!A:N, "select A,count(B) where H >= date '2020-02-01' and H <= date '2020-04-01' group by A pivot H limit 0")); QUERY(
QUERY('Raw Data - Closed'!A:N, "select A,count(B) where H >= date '2020-02-01' and H <= date '2020-04-01' group by A pivot H"), "offset 1", 0)},
SEQUENCE(1, COLUMNS(
QUERY('Raw Data - Closed'!A:N, "select A,count(B) where H >= date '2020-02-01' and H <= date '2020-04-01' group by A pivot H"))-1, 2, 1), 0))}), "order by Col1", 1)), " AOpen", " Open"))