If statement 下拉查询没有错误,但不返回任何结果
我希望允许其他人使用一些下拉列表对数据进行排序,但如果不需要,他们不必全部使用 我的查询功能:If statement 下拉查询没有错误,但不返回任何结果,if-statement,google-sheets,google-sheets-formula,google-sheets-query,google-query-language,If Statement,Google Sheets,Google Sheets Formula,Google Sheets Query,Google Query Language,我希望允许其他人使用一些下拉列表对数据进行排序,但如果不需要,他们不必全部使用 我的查询功能: =QUERY(CATALOG!A2:I259,"SELECT * WHERE 1=1 "&IF(A2="Any",""," AND B = '"&A2&"' ")&IF(B2="ANY",""," AND C = '"&B2&"' ")&IF(C2="Any",""," AND D = '"&C2&"' ")&IF(D2=
=QUERY(CATALOG!A2:I259,"SELECT * WHERE 1=1 "&IF(A2="Any",""," AND B = '"&A2&"' ")&IF(B2="ANY",""," AND C = '"&B2&"' ")&IF(C2="Any",""," AND D = '"&C2&"' ")&IF(D2="Any",""," AND E = '"&D2&"' ")&IF(E2="Any",""," AND F = '"&E2&"' ")&IF(F2="Any",""," AND G = '"&F2&"' ")&IF(G2="Any",""," AND H = '"&G2&"' "),1)
每当我运行这个时,都没有出现错误,但是查询没有给出任何项目
我最初只测试了其中一个下拉列表,但没有收到任何结果。我在输入端插入了一个已知的产品,但仍然没有收到任何信息
链接到带有数据集和函数的电子表格副本
一些搜索参数似乎是数字。在这种情况下,不要使用单引号,因为这样会将它们转换为字符串。看看这是否有效
=QUERY(CATALOG!A2:I259,"SELECT * WHERE 1=1 "&IF(A2="Any",""," AND B = "&A2&" ")&IF(B2="ANY",""," AND C = '"&B2&"' ")&IF(C2="Any",""," AND D = '"&C2&"' ")&IF(D2="Any",""," AND E = '"&D2&"' ")&IF(E2="Any",""," AND F = "&E2&" ")&IF(F2="Any",""," AND G = "&F2&" ")&IF(G2="Any",""," AND H = '"&G2&"' "),1)
请尝试缩短:
=QUERY(CATALOG!A2:I259,
"where 1=1 "&
IF(A2="Any",," and B = "&A2)&
IF(B2="Any",," and C = '"&B2&"'")&
IF(C2="Any",," and D = '"&C2&"'")&
IF(D2="Any",," and E = '"&D2&"'")&
IF(E2="Any",," and F = "&E2)&
IF(F2="Any",," and G = "&F2)&
IF(G2="Any",," and H = '"&G2&"'"), 1)