从脚本访问BigQuery保存的项目查询

时间:2017-01-23 15:24:13

标签: google-apps-script google-bigquery

我正在尝试使用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 个答案:

答案 0 :(得分:3)

据我所知 - 保存和共享查询旨在通过查询链接在用户之间共享查询,而不是无论如何都执行该链接。
因此,在您的情况下,您可以将查询保存为视图,然后使用它们,如下所示

   query: 
    {
        query: 'SELECT * FROM YourView',
        writeDisposition:'WRITE_APPEND',
        destinationTable: 
        {
            projectId: projectId,
            datasetId: datasetId,
            tableId: 'TestScript'
        }
    },