0
我想將查詢結果保存到新表中。 使用BigQuery在線編輯器如bigquery.cloud.google,我可以很容易地通過Felipe Hoffa的micro-solution來完成。 用幾秒鐘插入〜150.000.000行的結果。如何將BigQuery查詢結果保存到另一個表中?
但是,我如何通過BigQuery API運行帶有「Destination Table」參數的查詢?
我想將查詢結果保存到新表中。 使用BigQuery在線編輯器如bigquery.cloud.google,我可以很容易地通過Felipe Hoffa的micro-solution來完成。 用幾秒鐘插入〜150.000.000行的結果。如何將BigQuery查詢結果保存到另一個表中?
但是,我如何通過BigQuery API運行帶有「Destination Table」參數的查詢?
通過使用Jobs.insert
API調用。
例如,在Java:
[...]
TableReference tableRef = new TableReference();
tableRef.setProjectId("<project>");
tableRef.setDatasetId("<dataset>");
tableRef.setTableId("<name>");
JobConfigurationQuery queryConfig = new JobConfigurationQuery();
queryConfig.setDestinationTable(tableRef);
queryConfig.setAllowLargeResults(true);
queryConfig.setQuery("some sql");
queryConfig.setCreateDisposition(CREATE_IF_NEEDED);
queryConfig.setWriteDisposition(WRITE_APPEND);
JobConfiguration config = new JobConfiguration().setQuery(queryConfig);
Job job = new Job();
job.setConfiguration(config);
Bigquery.Jobs.Insert insert = bigquery.jobs().insert("<projectid>", job);
JobReference jobId = insert.execute().getJobReference();
[...]
設置configuration.query.destinationTable *在作業配置字段,然後調用jobs.insert? https://cloud.google.com/bigquery/docs/reference/v2/jobs/insert有更多信息。 – shollyman