【问题标题】:Combine Query Results in Google Sheets with Mismatched Result Sizes将 Google 表格中的查询结果与不匹配的结果大小相结合
【发布时间】:2019-06-28 18:19:05
【问题描述】:

我正在尝试使用一个公式,我可以继续向其中添加查询以具有不同的标准和排序算法。结果会有不同的大小,但都来自同一张纸。这是我正在尝试的:

=ARRAYFORMULA(IFERROR({iferror(QUERY(Available!$A$3:$M, "select A,B,C,D,E,F,G,H,I,J,K,L,M where M like '%Blah' order by B desc");iferror(QUERY(Available!$A$3:$M, "select A,B,C,D,E,F,G,H,I,J,K,L,M where C = 'Bleh' order by B asc limit 3"),A2:M2/0)})))

在上面的示例中,第一个查询将查看工作表并找到一组列,其中列 M 包含“Blah”,对其进行排序并提供结果。这工作正常。当我添加第二个查询时,我希望它将结果附加到上一个查询中。我希望有能力继续建立这个公式,所以我可以在将来添加更多独立排序和限制的查询。在第二个查询中,我只想要 3 个反向排序且 C 列显示为“Bleh”的结果。

【问题讨论】:

    标签: google-sheets concatenation google-sheets-formula google-sheets-query google-query-language


    【解决方案1】:

    可能只是这样:

    =IFERROR(QUERY(
     {IFERROR(QUERY(Available!A3:M, "where M like '%Blah' order by B desc", 0), 
     {"","","","","","","","","","","","",""});
     IFERROR(QUERY(Available!A3:M, "where C = 'Bleh' order by B desc", 0), 
     {"","","","","","","","","","","","",""})}, 
     "where Col1 is not null", 0))
    

    【讨论】:

    • 是的,如果您希望两个标准使用相同的排序或限制,则可以。在上面的例子中,我希望一个查询按降序排序,另一个查询按升序排序,并将结果限制为 3。我确实喜欢删除“选择”部分……这节省了我选择所有内容时要花很多时间。
    • @ChrisMoretti 我明白了,答案已更新。还要检查:stackoverflow.com/a/56839091/5632629
    【解决方案2】:

    想通了。这是一个使用更简单示例的语法问题。我能够使用它来工作:

    ={QUERY(Available!$A$3:$M, "select A,B,C,D,E,F,G,H,I,J,K,L,M where M like '%Blah' order by B desc");QUERY(Available!$A$3:$M, "select A,B,C,D,E,F,G,H,I,J,K,L,M where C = 'Bleh' order by B desc")}
    

    最初我尝试过这个,但使用, 作为分隔符,用于使用列组合范围。为了使用行来组合范围,您需要使用 ; 作为分隔符。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-22
      • 1970-01-01
      相关资源
      最近更新 更多