是否可以通过动态方式在模式略有不同的BigQuery表之间复制数据?

时间:2018-07-11 16:46:26

标签: google-bigquery

我有许多具有以下版本的表: table_v1 table_v2 table_v3 ... table_vN

I want to run some code (could be whatever) which will do:
1) copy data from table_v1 to table_v2
2) copy data from table_v2 to table_v3
3) ...
4) copy data from table_vN-1 to table_vN

主要问题是以下架构略有不同,我不想调整架构或为缺少的列提供具有null的模拟列。我需要以动态方式跳过它们。 有办法实现吗?

1 个答案:

答案 0 :(得分:1)

您可以执行类似的操作(本质上是在查询中定义适当的目标架构)

select t1.col1 as t2_col1, t1.col3 ad t2.col2... from table_v1

并将目标位置设置为table_v2-取决于您使用writeDisposition定义所需结果的复制(添加数据或覆盖数据)的含义。

您可以使用bq query command来执行此操作,也可以使用BQ库为您选择的语言编写脚本。或调用BQ API Query Job