【问题标题】:How do I do a date-based query in new Google Spreadsheets?如何在新的 Google 电子表格中进行基于日期的查询?
【发布时间】:2014-05-20 15:50:18
【问题描述】:

我正在使用几周前推出的新 Google 电子表格。我正在使用以下查询从另一个电子表格中提取数据:

=QUERY(IMPORTRANGE("https://docs.google.com/spreadsheet/ccc?key=blablathisisanexample", "samplesheet!A:D"), "select SUM(Col4) where (Col1 >= date '2012-1-1')")

如果我删除“where (Col1 >= date '2012-1-1')”位,则查询工作得非常好。它将提取数据并正确汇总。

但是我的 where-col1-date 过滤器有什么问题?它的编写方式与以前版本的 Google 电子表格相同,并且没有给出错误消息。它只是返回一个标题,没有结果,就好像它没有找到一个日期一样。例如,数据文件中的日期在第 1 列,格式为 2014 年 4 月 7 日。这曾经在以前的版本中可以工作,现在我很茫然。

【问题讨论】:

    标签: google-sheets


    【解决方案1】:

    我在这里有几个建议。但首先:让我们将“2012-1-1”值复制到特定单元格,例如 F5,并使用与原始电子表格中完全相同的日期格式 az 写入:2012 年 1 月 1 日。

    1. 使用过滤功能:

      =SUM(FILTER(IMPORTRANGE("https://docs.google.com/spreadsheet/ccc?key=blablathisisanexample", "samplesheet!D:D"), IMPORTRANGE("https://docs.google.com/spreadsheet/ccc?key=blablathisisanexample", "samplesheet!A:A")>=F5))
      

    我承认因为有两个 ImportRange 函数,它不是那么漂亮,但它确实有效,我试过了。

    1. 如果你坚持使用QUERY,那么尝试替换where条件如下:

      "select SUM(Col4) where ( Col1 >= " & F5 & ")"
      

    这个我没试过,但第一个(带过滤器)应该可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-15
      • 1970-01-01
      • 1970-01-01
      • 2014-10-13
      • 2015-06-10
      • 2014-06-17
      相关资源
      最近更新 更多