使用 Python。有什么方法可以在將 csv 文件處理到 Big Query 時添加額外的字段。我想添加一個帶有當前日期的 date_loaded 字段?我使用過的 Google 代碼示例..# from google.cloud import bigquery# client = bigquery.Client()# dataset_id = 'my_dataset'dataset_ref = client.dataset(dataset_id)job_config = bigquery.LoadJobConfig()job_config.schema = [ bigquery.SchemaField('name', 'STRING'), bigquery.SchemaField('post_abbr', 'STRING')]job_config.skip_leading_rows = 1 # The source format defaults to CSV, so the line below is optional.job_config.source_format = bigquery.SourceFormat.CSVuri = 'gs://cloud-samples-data/bigquery/us-states/us-states.csv' load_job = client.load_table_from_uri( uri, dataset_ref.table('us_states'), job_config=job_config) # API requestprint('Starting job {}'.format(load_job.job_id))load_job.result() # Waits for table load to complete.print('Job finished.')destination_table = client.get_table(dataset_ref.table('us_states'))print('Loaded {} rows.'.format(destination_table.num_rows))
2 回答

慕森卡
TA貢獻1806條經驗 獲得超8個贊
您可以在加載時繼續加載數據,但加載到名為old_table
.
加載后,您可以運行以下內容:
bq --location=US query --destination_table mydataset.newtable --use_legacy_sql=false --replace=true 'select *, current_date() as date_loaded from mydataset.old_table'
這基本上將舊表的內容加載date_loaded
到new_table
. 通過這種方式,您現在擁有一個新列,而無需在本地下載或進行所有混亂。
添加回答
舉報
0/150
提交
取消