Google Sheets QUERY函数无法选择BY列的问题及解决方法咨询
Google Sheets QUERY函数列名与关键字冲突的解决办法
问题描述
以下公式可正常运行:
=query(costMarkupLookup!A:CQ, "Select G,H,I,J,K,L,M,N,BL,BM,BZ,CA where BM is not null AND BZ > BM ",1)
但在Select语句中添加BY列后,公式无法运行——系统将列名BY识别为SQL关键字"BY",报错公式如下:
=query(costMarkupLookup!A:CQ, "Select G,H,I,J,K,L,M,N,BL,BM,BY,BZ,CA where BM is not null AND BZ > BM ",1)
对应的错误提示:
Unable to parse query string for Function QUERY parameter 2: PARSE_ERROR: Encountered " "by" "BY "" at line 1, column 40.
解决办法
这并非Bug,而是QUERY函数的SQL语法规则:当列名与SQL关键字重名时,需要用**反引号(`)**将列名包裹,明确告知函数这是列名而非关键字。修改后的公式如下:
=query(costMarkupLookup!A:CQ, "Select G,H,I,J,K,L,M,N,BL,BM,`BY`,BZ,CA where BM is not null AND BZ > BM ",1)
只需把BY改成`BY`,公式即可正常解析运行。
内容的提问来源于stack exchange,提问作者Edward Wu
相关产品推荐
相关产品推荐

