Google工作表高级搜索使用查询功能

时间:2017-10-27 12:36:19

标签: google-sheets google-query-language

我尝试使用Google表格来管理数据库。我已经弄清楚如何使用查询功能进行简单搜索,但我想知道是否可以进行高级搜索。这就是我的意思:

Example I made(参见第二张)

每行都有许多属性,搜索表中有许多可输入的字段。我希望能够搜索一个而不必保留其他字段,但我不确定如何使用查询功能来获取我需要的内容。

非常感谢任何帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

必须只出现在过滤的开头,而不是出现在每个条件之前。 这可以使用FILTER和一些if语句来完成,或保持查询并像下面这样调整它:

= IFERROR(
    query(  
      Database!B3:G13,   
      "select B,C,D,E,F,G 
       where " &
         IF(LEN($C$4), "lower(C) contains lower('"&$C$4&"')", "1=1") & " and " &
         IF(LEN($E$4), "lower(D) contains lower('"&$E$4&"')", "1=1") & " and " & 
         IF(LEN($G$4), "lower(E) contains lower('"&$G$4&"')", "1=1") & " and " &
         IF(LEN($I$4), "lower(F) contains lower('"&$I$4&"')", "1=1") & " and " &
         IF(LEN($K$4), "lower(G) contains lower('"&$K$4&"')", "1=1")),
    "No Results")

它实质上检查是否指定了过滤器,如果没有,则将1 = 1(TRUE)作为占位符。