ネストされたフィールドにあるカラムの追加/削除を既存のデータを残したまま行いたかった。カラムの追加/削除は存在するが、残念なことにこれらではネストされたフィールド内にあるカラムはサポートしていない。COLUMNこのステートメントで以下のものを作成することはできません。フィールド内にネストされた列。COLUMNこのステートメントで次の列のドロップはできません。使わずとも、ネストされたフィールドにあるカラムの追加/削除が行うことができたので、紹介する。自体にはテーブルのカラム削除のような機能はない。カラムはのぞいて取得することができる。オプションを併用することで、テーブルのカラム削除と同等のことが行えるようになる。クエリ結果を別のテーブルに書き込むことができる。いう新たなテーブルに書き込まれる。指定するとクエリの宛先テーブルを上書きすることができるようになる。上書きで保存されるようになる。いうやり方はネストされたカラムの削除でも用いることになる。以下のようなスキーマの場合を考える。削除したい場合以下のように書ける。いうステートメントが新しく出てきたが、これを利用すると、列の内容を書き換えることができる。置き換える、という意味になる。指定する対象のカラムは既存のカラム名と一致している必要がある。列を省いたものになる。列だけを省くことになる。オプションを併用することで、結果、ネストされたカラムの削除を既存のレコードは残したまま行うことができる。ドキュメント上からは見つけられなかったので、知っておくと便利。有効にするためのもの。コマンドと同様の処理を、BigQueryコンソール上のクエリエディタからも行うことができ、以下のように書ける。ステートメントを利用すると、基本は新しいテーブルを作成するが、既に同じ名前のテーブルが存在する場合は置き換えてくれる。指定することで、新しく作成、もしくは置換するテーブルに用いるデータを指定することができる。指定した時と同じようなことを行うことができる。略されるので、知っておくと調べ物をする際にちょっと便利。ドキュメント上に記載がある。https://cloud.google.com/bigquery/docs/managing-table-schemas?hl=ja#add_a_nested_column_to_a_record_column詳細は上記の公式ドキュメントの通りだが、ざっくりとした作業の流れのイメージは以下の通り。保存したスキーマ(json)から削除したいカラム情報を削除する。更新したスキーマファイルを引数に実行し、スキーマを更新する。用いることでもカラムの追加はできるよう。できるようになったよう。ネストされたカラムの追加/削除などもサポートされればありがたいと思いました。qiita.com/pokotyanバッジを贈って著者を応援しようバッジを受け取った著者にはZennから現金やAmazonギフトカードが還元されます。Proよくある質問LinksX(Twitter)GitHubメディアキットLegal利用規約プライバシーポリシ。