GASでスプレッドシートのBigQueryで使うデータを取得する方法

GASでスプレッドシートのBigQueryで使うデータを取得する方法
くら
くら

GASでスプレッドシートのBigQueryで使うデータを取得する方法を紹介します!

こんな人にむけた記事です。
  • GASを使って、スプレッドシートのBigQueryで使うデータを取得したい人
スポンサーリンク

BigQueryで使うデータを取得:getDataSourceTables()

BigQueryで使うデータを取得します。

パラメータ

名前 タイプ 説明
なし なし なし

戻り値

DataSourceTable[]データソースのリスト

説明

function myFunction() {
  SpreadsheetApp.enableBigQueryExecution();
  const spreadsheet = SpreadsheetApp.getActive();
  const spec = SpreadsheetApp.newDataSourceSpec()
           .asBigQuery()
           .setProjectId('big_query_project')
           .setRawQuery('select @FIELD from table limit @LIMIT')
           .setParameterFromCell('FIELD', 'Sheet1!A1')
           .setParameterFromCell('LIMIT', 'namedRangeCell')
           .build();
  /* データの取得 */
  const dataSheet = spreadsheet.insertSheetWithDataSourceTable(spec);
  const dataSourceTable = dataSheet.getDataSourceTables()[0];
  /* 60s待機 */
  dataSourceTable.waitForCompletion(60);
  /* データの実行状態を取得 */
  console.log(`Data execution state: ${dataSourceTable.getStatus().getExecutionState()}`);
}

G Suiteの契約が必要そうで、サンプルコードのみ掲載します。(いつか試してみたい)

公式ドキュメント:Range > getDataSourceTables()

まとめ

くら
くら

スプレッドシートのBigQueryで使うデータを取得する方法でした!

  • GASを使ってBigQueryでデータ分析を行うときに活用できそうです!

コメント

タイトルとURLをコピーしました