我有类似bigquery excel connector - query larger than 256 char的问题
但是,我引用了一个单元格区域并获得了结果:
"WARNING Request failed: Error. Unable to execute query. 400 { code : 400, errors : [ { domain : global, location : query, locationType : other, message : 1.593 - 1.593: No query found., reason : invalidQuery } ], message : 1.593 - 1.593: No query found. }"
也许我正在“错误地”拆分查询?我假设每个单元只需要少于256个字符,它只会将指定范围内的后续单元连接到前面单元格中字符串的末尾。
我发现的每个帮助文档都显示简单的SQL语句,我可以运行简单的SQL语句,但我真正需要工作的查询在字段的where子句中有一个select语句。我已经尝试加入where子句中引用的表来查看是否使语句更简单,更容易识别为查询,但没有运气。
我已经尝试在NotePad中打开.iqy文件(BigQuery最初让我下载),看看我是否可以在那里输入查询,但是我找不到任何关于这些类型文件的语法文档,所以当我将它加载到Excel中时它仍然显示输入查询的提示。
最终结果不需要从单元格引用中读取查询,事实上,如果它只能在.iqy文件中,那么这将是最可取的:用户将数据丢弃的可能性更小。
query
文件中对参数(project
,key
和.iqy
)进行URL编码。使用像https://meyerweb.com/eric/tools/dencoder这样的在线工具.iqy
,则必须删除查询定义。进入Properties
并取消选中Save query definition
,然后再次连接到.iqy
不确定q
(查询)的最大大小是针对https://bigquery-connector.appspot.com的,但我建议使用BigQuery VIEW。
spaces
替换+
一样简单.iqy
CURRENT_USER()
实现某种行级安全性...但这是另一个话题!
最后,回到.iqy
,您可以在查询中组合和嵌入参数,如下所示:
q=select+*+from+mydataset.myview+where+FiscalYear=["Year", "Enter a year:"]&p=myproject&k=myURLencodedKey