13

目标:我在 gSheets 中使用 QUERY() 将来自多个工作表的数据合并到同一个工作簿中。数据是从 GA 中提取的,被分解成小段以防止抽样。这意味着它具有所有相同的字段,我只是将它们拼凑起来进行分析。

我想使用 QUERY() 来执行此操作,因为使用 Google Analytics Sheets 插件将数据连接到自动更新。这个想法是,当它在未来更新时,它会再次拼凑起来,并且分析将在我们无需任何额外努力(或人为错误风险)的情况下运行。

我遵循了 Google Support语法,一个房间可以容纳多张纸。这在其他帖子中有所提及,并且似乎对其他人有用——不过,当与 IMPORTRANGE 引用外部工作簿结合使用时。在同一个工作簿中必须有类似的方法。

我试过的:

=QUERY({'LandingPages-Oct1'!A16:F,'LandingPages-Oct2'!A16:F},"select *",0)

^ 所有逗号分隔导致工作表并排导入

=QUERY({'LandingPages-Oct1'!A16:F;'LandingPages-Oct2'!A16:F},"select *",0)

^ 分号分隔表会导致出现第一张数据,但不会出现第二张

=QUERY({'LandingPages-Oct1'!A16:F;'LandingPages-Oct2'!A16:F};"select *",0)

^ 分号分隔查询参数不返回结果

我错过了什么?

示例数据: https ://docs.google.com/spreadsheets/d/1STuBdXPCY-mtJdmKZVblR8WlvLaRPa3tl4Kme10sQBQ/edit?usp=sharing

4

4 回答 4

19

或者,您也可以使用查询来删除空行

=QUERY({'LandingPages-Oct1'!A16:F; 'LandingPages-Oct2'!A16:F}, "where Col1 <>''")
于 2017-01-11T12:41:05.670 回答
16

分号分隔表会导致出现第一张数据,但不会出现第二张

这通常意味着您没有滚动到工作表底部以查看那里的第二部分数据,位于第一张工作表的所有空行下方。

由于您可能不想导入空行,请将它们过滤掉(通过某些预期为非空的列):

={filter('LandingPages-Oct1'!A16:F, len('LandingPages-Oct1'!A16:A));
  filter('LandingPages-Oct2'!A16:F, len(LandingPages-Oct2'!A16:A))}

完全不需要查询;查询字符串"select *"意味着您并没有真正在查询。

于 2017-01-11T01:39:40.930 回答
0

关于:

^ 分号分隔表会导致出现第一张数据,但不会出现第二张

对我来说,这最初不起作用的原因是这两个表的格式不一样。粘贴相同的格式后,这再次起作用。

于 2018-07-04T18:49:56.793 回答
0

弄清楚如何使用上面的公式按列排序:

=SORT(QUERY({'LandingPages-Oct1'!A16:F; 'LandingPages-Oct2'!A16:F}, "where Col1 <>''"),1,TRUE)

这将按第 1 列排序。

于 2019-01-11T06:11:35.407 回答