【问题标题】:Google Spreadsheet multiple column filter using OR使用 OR 的 Google 电子表格多列过滤器
【发布时间】:2010-03-25 02:38:48
【问题描述】:

我有一个 Google 电子表格,其中包含 3 列空白或有值。我想计算填充了 A 和 B 或 C 的行数。如果我正在编写 SQL 查询,那将是

select count(*) 
from Table 
where A is not null and (B is not null or C is not null)

但我终其一生都无法弄清楚如何在 Google 电子表格中获取此信息

【问题讨论】:

    标签: google-sheets google-sheets-formula


    【解决方案1】:

    下面的公式应该可以满足您的要求:

    =ROWS(FILTER(A2:A, NOT(ISBLANK(A2:A)), NOT(ISBLANK(B2:B))+NOT(ISBLANK(C2:C)) ))
    

    并解释一下:

    • ROWS 计算参数的行数(在我们的例子中是过滤的)
    • FILTER 返回所有后续参数匹配的 arg1 (A2:A) 行
    • +(加法)符号将两个谓词与逻辑 OR 组合在一起

    最后,如果您不使用标题列,您可以将引用从 A2:A 更改为 A:A

    或者,您可以使用QUERY 函数:

    (为了便于阅读,分成多行)

    =ROWS(QUERY(A2:C, 
        "SELECT A WHERE A IS NOT NULL AND (B IS NOT NULL OR C IS NOT NULL)"))
    

    有关查询语法的更多信息,请参阅Visualization API Query Language Reference,特别是Language Reference

    【讨论】:

    • 太棒了,那个QUERY函数......我什至不知道它存在!谢谢!
    • 使用“+”符号作为布尔 OR 的文档在哪里?
    猜你喜欢
    • 2014-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多