首页 > 解决方案 > 处理按日期对行分组的 Google 表格查询导致的空白

问题描述

在 Google 表格中,我有一个范围,其中包含事件列表以及它们每天发生的次数。通过查询每个事件并为其提供一列,我将这些数据显示在另一张工作表的列中。我遇到的问题是某些日期没有发生事件,这不会在我的源数据中添加计数为“0”的相应行,从而破坏了我在其他地方呈现数据的方式。

这是源格式的示例(请注意,10 月 2 日没有任何事件 2 数据):

2019-10-01,Event 1,12
2019-10-01,Event 2,8
2019-10-02,Event 1,16
2019-10-03,Event 1,7
2019-10-03,Event 2,21

...然后我运行这样的查询来填充一列:

=QUERY(event_data, "SELECT C WHERE B = 'Event 1' GROUP BY A)

现在,如果我为事件 2 执行此操作,它将在 10 月 1 日之后紧跟 10 月 3 日的数字,并且当我并排显示这两个事件时,差距会使这些结果看起来像是从 10 月 2 日开始的:

Date       Event 1  Event 2
2019-10-01   12        8 
2019-10-02   16        7
2019-10-03   21

在 Google 表格中是否有任何合理的方法可以解决此问题?我知道您不能真正在查询中进行左/内连接。

我认为更好的方法是重写我用来填充源范围的 SQL 查询,以便它首先返回这样的行:

2019-10-02,Event 2,0

只是想知道有没有办法解决这个问题。

标签: google-sheetspivotgoogle-sheets-formulagoogle-sheets-querygoogle-query-language

解决方案


您可以将内容转入QUERY

=QUERY(A1:C, "select A,sum(C) where A is not null group by A pivot B", 0)

0


推荐阅读