如何编辑BigQuery Connector for Excel .iqy文件以使其中已包含SQL语句而不是依赖于Excel单元格的输入?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何编辑BigQuery Connector for Excel .iqy文件以使其中已包含SQL语句而不是依赖于Excel单元格的输入?相关的知识,希望对你有一定的参考价值。
我有类似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这样的在线工具 - 如果在进行上述更改之前已在Excel中加载了
.iqy
,则必须删除查询定义。进入Properties
并取消选中Save query definition
,然后再次连接到.iqy
不确定q
(查询)的最大大小是针对https://bigquery-connector.appspot.com的,但我建议使用BigQuery VIEW。
- 它隐藏了SQL管道,因此减少了传递给API的SQL的大小。编码查询的URL可以像用
spaces
替换+
一样简单 - 您可以在BigQuery中调整/更改视图定义,而无需向用户推出新的
.iqy
- 使用
CURRENT_USER()
实现某种行级安全性...
但这是另一个话题!
最后,回到.iqy
,您可以在查询中组合和嵌入参数,如下所示:
q=select+*+from+mydataset.myview+where+FiscalYear=["Year", "Enter a year:"]&p=myproject&k=myURLencodedKey
以上是关于如何编辑BigQuery Connector for Excel .iqy文件以使其中已包含SQL语句而不是依赖于Excel单元格的输入?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Spark-BigQuery_connector 用于现有的 spark 环境(不使用 google dataproc)
在Apache Spark中使用Bigquery Connector时如何设置分区数?
描述如何在 SQL 中内联定义 Javascript UDF 函数的 BigQuery 文档在哪里(不是在 UDF 编辑器或单独的文件中)?