既存のテーブルのフィールドのいくつかが次のような点を除いて、クエリの結果と同じスキーマを持つ既存のテーブルにクエリの結果を追加しようとしています。必須。私はそれがすべてで同じ名前と型を持つ新しいテーブルにクエリの結果を書き込むときBigQueryが必要なフィールドを持つテーブルにクエリの結果を追加します。
Invalid schema update. Field user has changed mode from REQUIRED to NULLABLE
:
この
は私がしようとすると、クエリを実行し、必要なすべてのフィールドのエラーですただし、すべてのフィールドのモードはNULLABLE(1つの繰り返しフィールドを除く)です。私は運がないすべての必要なフィールドのためにAND user IS NOT NULL
を使ってみました。私はまた、クエリの結果を別のテーブルに保存してからそのスキーマを変更しようとしましたが、BQでは必要なフィールドをテーブル上で遡及的に設定することはできません。
必要なフィールドを持つテーブルのクエリでテーブルに追加するため、その基本的に不可能...監督のビットのように思われる:このように。 私がこの作業を行う唯一の方法は、データをCSVとしてGCSにエクスポートし、ロードジョブを実行することです。 –
クエリがREQUIREDフィールドを生成する場合がありますが、一般的な場合は可能でない場合があります。 REQUIREDは良いよりも害が多いようですので、スキーマをすべてのフィールドでNULLABLEに変更するだけです。 –
私のテーブルはすでに生成され、REQUIREDフィールドに書き込まれているので、私は実際に既存のテーブルを切り替えることはできません。 –