从Google Scripts API运行特定的BigQuery作业

时间:2018-04-10 13:41:00

标签: google-bigquery

是否可以从BigQuery运行特定作业,通过其来自Google Scripts API的jobId调用它,而不是粘贴整个查询? 我想设置一个触发器来定期运行一个作业,但我不想将整个查询粘贴到Scripts API,因为它容易出错并且很耗时。 更新: 查询应该能够使用临时函数。

2 个答案:

答案 0 :(得分:2)

不,你不能使用它的id重新运行这样的工作。但您可以使用API​​获取作业的详细信息并从中提取SQL,即https://cloud.google.com/bigquery/docs/reference/rest/v2/jobs/get

我不确定为什么你不能在脚本中使用SQL。也就是说,我只是将SQL放在BigQuery的视图中,然后从脚本中调用视图。

答案 1 :(得分:0)

作业是查询的一个实例,因此从技术上讲,您不能多次运行相同的作业。您可以访问作业详细信息并获取查询,但使用给定查询创建新作业会更简单。

我发现您希望避免更长的查询遇到格式化错误。如果你的工作只是阅读你的工作,那么你就可以为复杂的查询创建视图,而只是触发Select * from view的工作。通过这种方式,您可以直接在BQ UI上轻松访问查询定义,2)在组装作业时不会遇到格式化问题