よしたく blog

ほぼ週刊で記事を書いています

BigQueryのメタデータからDDL文を確認する

BigQueryのメタデータからDDL文を確認する方法を調べた。以前、過去に作ったテーブルのDDL文がわからず困った時に役立った。 INFORMATION_SCHEMA.TABLESddlカラムにDDL文が存在している。

SELECT
  table_name, ddl
FROM
  `<project_id>.<dataset_name>.INFORMATION_SCHEMA.TABLES`
 WHERE
  table_name = '<target_table>'
;

BigQueryのpublic-dataからbaseballデータセットのschedulesテーブルのDDL文を確認したいときは次のようになる。

SELECT
  table_name, ddl
FROM
  `bigquery-public-data.baseball.INFORMATION_SCHEMA.TABLES`
 WHERE
  table_name = 'schedules'

出力結果

table_name ddl
schedules CREATE TABLE bigquery-public-data.baseball.schedules
(
gameId STRING,
gameNumber INT64,
seasonId STRING,
year INT64,
type STRING,
dayNight STRING,
duration STRING,
duration_minutes INT64,
homeTeamId STRING,
homeTeamName STRING,
awayTeamId STRING,
awayTeamName STRING,
startTime TIMESTAMP,
attendance INT64,
status STRING,
created TIMESTAMP
);