Magicode logo
Magicode
1

BigQuery の INFORMATION_SCHEMA をから DDL 取得し、既存テーブルと同じスキーマの新しいテーブルを作る

Bigquery の INFORMATION_SCHEMA をから DDL 取得し、既存テーブルと同じスキーマの新しいテーブルを作る

INFORMATION_SCHEMA.TABLES から DDL が取得し、同じスキーマのテーブルを作成する方法のメモです。

Summary

以下の SQL で INFORMATION_SCHEMA.TABLES 内の DDL を検索する。

SELECT 
    DDL, *
FROM
    <dataset>.INFORMATION_SCHEMA.TABLES

前提

以下のテーブルと同じスキーマの新しいテーブルを作成したいとします。

  • dataset: foo
  • table: bar
    • column: baz, qux, quux
    • 日付分割テーブル

また、BQ のコンソール上で実施するとします。

1. DDL を取得する

以下の SQL を実行します。

実行結果

2. 取得した DDL を使って新しいテーブルを作成する

取得した DDL をコピーし、コンソール上に貼り付け、適宜修正します。 この例では、同じ dataset: foo に bar2 と言う table を作成します。

実行結果

以上で、同じスキーマのテーブルを作成することができました。

BQ のコンソール上でサクッとできるのは地味に便利ですね。

Discussion

コメントにはログインが必要です。