Lia*_*mJC 5 formulas google-sheets google-query-language
我想知道如何处理这样的查询。假设我在电子表格的单元格 A2 中包含以下文本:
Case Bakers' Flats 12" White Flour Tortillas 10/12ct
Run Code Online (Sandbox Code Playgroud)
并需要将以下公式放入B2:
=QUERY(importrange("KEY", "DATA!A1:Z1000"), "select Col24 where (Col1 = '"&A2&"')")
Run Code Online (Sandbox Code Playgroud)
它会产生错误。
我的问题是:当我使用的字符串包含各种引号和撇号时,有什么方法可以避免查询出错?
")之间包含包含撇号的字符串。Google Sheets QUERY 内置函数通过\在单引号前内部添加来自动转义某些字符,但当用作条件源的单元格值包含双引号时,它不起作用。作为解决方法,建议使用双重替换。
下表表示包含的电子表格范围
=QUERY(A:A,"SELECT * WHERE A = """&B1&""" ")+---+---------+-----+-----+ | | 一个 | 乙 | C | +---+---------+-----+-----+ | 1 | 我是 | 我是 | 我是 | | 2 | 你是| | | | 3 | 这是| | | | 4 | 我是 | | | | 5 | 你是 | | | | 6 | 它是| | | +---+---------+-----+-----+
=替换(
询问(
SUBSTITUTE(A:A,"""","''"),
"SELECT * WHERE Col1 = """&SUBSTITUTE(B1,"""","''")&""""
),
"''",""""
)
请注意,不是使用字母 A 作为数据源列的标识符,而是使用 Col1。
https://developers.google.com/chart/interactive/docs/querylanguage
| 归档时间: |
|
| 查看次数: |
14588 次 |
| 最近记录: |