我在google表格中找到了包含一些数据的表格:
[Name] [Product] [Price] [ID]
我需要根据其他范围收集并总结所选行,例如A2:A
在另一个工作表上,其中A2:A
包含来自[Name]
的名称。
我正在尝试以下解决方案:
=query('dataSheet'!A3:D,"select * " & myFunction() ,-1)
其中myFunction()
是一个脚本,可以对"哪里......或者......" SQL查询的一部分:
function myFucntion(){
var payList = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Ügyfél Fizetés').getRange('A2:A').getValues();
var payLength = payList.filter(String).length;
var payRow = payLength + 2;
if (payLength > 0){
var sqlString = "";
sqlString = "where A = '""" & " & """ & "A " & payRow & """ & """ & "'";
for (i = 0; i < payLength; i++){
}
}
Logger.log(sqlString);
return sqlString;
}
sqlString
看起来应该是这样的:
where A = '" & A2 & "' or A = '" & A3 & "'"
我会在or
循环中添加for
段,但sqlString = ...
部分会抛出错误:
失踪;在声明之前。
帮助我解决语法问题,或者如果您有更有效的解决方案,我可以接受所有建议。
答案 0 :(得分:0)
使用Google Apps脚本编写Google表格自定义功能时,我们应该考虑两种语法,Google表格和Google Apps脚本使用的格式,如果公式包含QUERY内置函数,我们也会显示请注意Google查询语言语法。
Google表格公式和Google Apps脚本语句具有不同的语法。
连接
&
上用作连接运算符+
来连接字符串。 在文字中包含"
/在字符串中转义引号
"
置于文本值内,我们会写"""
"
\"
在Google Apps脚本上写入时,在QUERY参数中包含'
'
需要包含字符串文字。当我们在Google Apps脚本中为QUERY函数编写SQL语句时,它应该在字符串中写为\'
。