2017-11-15 3 views
1

私のソースファイル/データにない繰り返し/静的な値でデータをBigQueryにロードする際に、新しい列を追加しようとしています。BigQuery - ALLOW_FIELD_ADDITION経由で値を追加できますか?

ALLOW_FIELD_ADDITIONオプションを使用してロード時にNULL可能な列をテーブルに追加することができましたが、これは値のnullを含む列を追加するだけです。

この新しい列の各行に静的な値を設定するにはどうすればよいですか?

マイロードの設定は次のようになります。

config= { 
    'configuration'=> { 
     'load'=> { 
     'sourceUris'=> files_array, 
     'schema'=> { 
      'fields'=> fields_array 
      }, 
     'schemaUpdateOptions' => [{ 'ALLOW_FIELD_ADDITION'=> true}], 
     'destinationTable'=> { 
      'projectId'=> my_project, 
      'datasetId'=> 'my_dataset', 
      'tableId'=> my_table 
     }, 
     'sourceFormat' => 'NEWLINE_DELIMITED_JSON', 
     'createDisposition' => 'CREATE_IF_NEEDED', 
     'writeDisposition' => 'WRITE_TRUNCATE', 
     'maxBadRecords'=> 10, 
     } 
    }, 
    } 

感謝を事前に!

答えて

1

あなたは2つの段階でこれを行う必要があるでしょう:

ステップ1:既存の列を使用してデータをロードします。

手順2:SELECT *, 3 AS new_column FROM ...このクエリの結果を表として保存します。

+0

ありがとう、フェリペ。私はデータをロードするときにファイル名を追加することができれば、別の解決法が使えると思っていましたか?私はそれが可能であるとは思わない?私のファイル名は、ISO2コードを含む規約に従います。 – Raoot

+0

興味深い質問!それを別の質問として提出しますか? –

+0

https://stackoverflow.com/questions/47325630/add-filename-as-column-on-import-to-bigquery @Felipe Hoffa – Raoot

関連する問題