2024-09-27 20:17:59 发布
网友
我在Google云平台上创建了两个项目project1和project2。Project1有一个名为dataset1的bigquery数据集,其中包含一个名为table1的表,该表包含一些内容。Project2有一个名为dataset2的bigquery数据集,其中包含一个名为table2的表,该表为空。我需要一个python代码,将复制/导入table1和导出/复制到table2,这是最初使用googlecloudfunctions工具空的。你知道吗
在此处查找复制表的Python代码:
代码是:
# from google.cloud import bigquery # client = bigquery.Client() source_dataset = client.dataset("samples", project="bigquery-public-data") source_table_ref = source_dataset.table("shakespeare") # dataset_id = 'my_dataset' dest_table_ref = client.dataset(dataset_id).table("destination_table") job = client.copy_table( source_table_ref, dest_table_ref, # Location must match that of the source and destination tables. location="US", ) # API request job.result() # Waits for job to complete. assert job.state == "DONE" dest_table = client.get_table(dest_table_ref) # API request assert dest_table.num_rows > 0
这个问题的另一个答案是可以用INSERT INTO *来完成,但是这个操作需要花费一个完整的表扫描,而这个操作是免费的。你知道吗
INSERT INTO *
(我通常使用CREATE TABLE或INSERT INTO,因为它们更方便)
CREATE TABLE
INSERT INTO
了解如何使用Python在documentation之后向BigQuery发送查询。
您需要的“复制/导入表1并将其导出/复制到表2”查询是(假设表2与表1具有完全相同的架构):
INSERT INTO project2.dataset2.table2 SELECT * FROM project1.dataset1.table1;
在此处查找复制表的Python代码:
代码是:
这个问题的另一个答案是可以用
INSERT INTO *
来完成,但是这个操作需要花费一个完整的表扫描,而这个操作是免费的。你知道吗(我通常使用
CREATE TABLE
或INSERT INTO
,因为它们更方便)了解如何使用Python在documentation之后向BigQuery发送查询。
您需要的“复制/导入表1并将其导出/复制到表2”查询是(假设表2与表1具有完全相同的架构):
相关问题 更多 >
编程相关推荐