从脚本访问 BigQuery 保存的项目查询
Posted
技术标签:
【中文标题】从脚本访问 BigQuery 保存的项目查询【英文标题】:Accessing BigQuery Saved Project Query from Script 【发布时间】:2017-01-23 15:24:13 【问题描述】:我正在尝试使用 Google Apps 脚本通过一系列选择/插入语句来处理和重塑 BigQuery 数据
我的 15 多条 Select 语句很复杂,为了便于维护,最好属于 BigQuery(而不是嵌入在 javascript 中)。我想从 Google Scripts 中引用 BigQuery 中的 Saved Project Query 来代替嵌入式查询。所以下面的查询语句
body =
configuration:
query:
query: 'SELECT foo, bar FROM FooBarProjcet;',
writeDisposition:'WRITE_APPEND',
destinationTable:
projectId: projectId,
datasetId: datasetId,
tableId: 'TestScript'
,
会变成类似
body =
configuration:
query:
query: BigQuery.ProjectQuery.FooBarSelect,
writeDisposition:'WRITE_APPEND',
destinationTable:
projectId: projectId,
datasetId: datasetId,
tableId: 'TestScript'
,
这可能吗? BigQuery 保存的项目查询是否会暴露给 API?
【问题讨论】:
【参考方案1】:据我所知 - 保存和共享查询旨在通过查询链接在用户之间共享查询,而不是无论如何执行该链接。 因此,在您的情况下,您可以将查询保存为视图,然后按如下方式使用它们
query:
query: 'SELECT * FROM YourView',
writeDisposition:'WRITE_APPEND',
destinationTable:
projectId: projectId,
datasetId: datasetId,
tableId: 'TestScript'
,
【讨论】:
把这个留给 OP,以防他们需要更多关于 BigQuery 视图的信息 - cloud.google.com/bigquery/querying-data#views以上是关于从脚本访问 BigQuery 保存的项目查询的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Big Query cli 运行保存的查询并将结果导出到 CSV?
使用 Google Apps 脚本将查询中的数据加载到 Big Query - 缺少必需参数
通常如何从 Google Apps 脚本访问 BigQuery
使用应用程序脚本在 Big Query 中创建视图 |错误:对 bigquery.tables.insert 的 API 调用失败并出现错误:缺少必需的参数(第 21 行