Google Sheets QUERY如何实现列包含指定内容的部分匹配查询
谷歌表格QUERY函数部分匹配修改方案
核心修改逻辑
你之前修改失败是因为混淆了QUERY函数的匹配语法:
- 精确匹配使用
Col4 = '目标值'语法 - 部分包含匹配不需要用
%和&拼接,直接用CONTAINS关键字即可,语法为Col4 CONTAINS '目标值' - 也可以用
LIKE搭配通配符实现,语法为Col4 LIKE '%目标值%',两种写法效果一致,CONTAINS更简洁
修改后完整公式
注意:如果你使用的是中文界面谷歌表格,请把公式里的西语拼接函数CONCATENAR替换为CONCATENATE
=QUERY({IMPORTRANGE(Links!B2,"Operaciones!A3:AZ");IMPORTRANGE(Links!B3,"Operaciones!A3:AZ");IMPORTRANGE(Links!B4,"Operaciones!A3:AZ");IMPORTRANGE(Links!B9,"Operaciones!A3:AZ");IMPORTRANGE(Links!B10,"Operaciones!A3:AZ");IMPORTRANGE(Links!B11,"Operaciones!A3:AZ");IMPORTRANGE(Links!B12,"Operaciones!A3:AZ");IMPORTRANGE(Links!B13,"Operaciones!A3:AZ");IMPORTRANGE(Links!B14,"Operaciones!A3:AZ");IMPORTRANGE(Links!B15,"Operaciones!A3:AZ");IMPORTRANGE(Links!B16,"Operaciones!A3:AZ");IMPORTRANGE(Links!B20,"Operaciones!A3:AZ");IMPORTRANGE(Links!B21,"Operaciones!A3:AZ");IMPORTRANGE(Links!B23,"Operaciones!A3:AZ");IMPORTRANGE(Links!B24,"Operaciones!A3:AZ");IMPORTRANGE(Links!B25,"Operaciones!A3:AZ")},CONCATENAR("SELECT * WHERE Col4 CONTAINS '",B1,"' OR Col4 CONTAINS '",B2,"' OR Col4 CONTAINS '",B3,"' OR Col4 CONTAINS '",B4,"'"),1)
可选优化方案
如果需要避免大小写差异、多余空格导致的匹配失败,可以用以下优化后的逻辑:
=QUERY({IMPORTRANGE(Links!B2,"Operaciones!A3:AZ");IMPORTRANGE(Links!B3,"Operaciones!A3:AZ");IMPORTRANGE(Links!B4,"Operaciones!A3:AZ");IMPORTRANGE(Links!B9,"Operaciones!A3:AZ");IMPORTRANGE(Links!B10,"Operaciones!A3:AZ");IMPORTRANGE(Links!B11,"Operaciones!A3:AZ");IMPORTRANGE(Links!B12,"Operaciones!A3:AZ");IMPORTRANGE(Links!B13,"Operaciones!A3:AZ");IMPORTRANGE(Links!B14,"Operaciones!A3:AZ");IMPORTRANGE(Links!B15,"Operaciones!A3:AZ");IMPORTRANGE(Links!B16,"Operaciones!A3:AZ");IMPORTRANGE(Links!B20,"Operaciones!A3:AZ");IMPORTRANGE(Links!B21,"Operaciones!A3:AZ");IMPORTRANGE(Links!B23,"Operaciones!A3:AZ");IMPORTRANGE(Links!B24,"Operaciones!A3:AZ");IMPORTRANGE(Links!B25,"Operaciones!A3:AZ")},CONCATENAR("SELECT * WHERE LOWER(Col4) CONTAINS LOWER('",TRIM(B1),"') OR LOWER(Col4) CONTAINS LOWER('",TRIM(B2),"') OR LOWER(Col4) CONTAINS LOWER('",TRIM(B3),"') OR LOWER(Col4) CONTAINS LOWER('",TRIM(B4),"')"),1)
TRIM():自动去除B1-B4单元格内容的前后多余空格LOWER():将Col4内容和匹配目标都转为小写,实现忽略大小写的匹配
内容的提问来源于stack exchange,提问作者user15240243
相关产品推荐
相关产品推荐

