如何在 bigquery 中动态连接表以避免公共列重复

how to dynamically join tables in bigquery to avoid duplication of common columns

我有 2 个 table 有很多列(每个都有大约 700-800 列,这使得单独写所有列名不可行)。 table 都有一些共同的行。我需要动态合并两个 table,这样公共列就不会重复,并且在最后的 table 中只被查询一次。例如:

TABLE 1:
+---------+--------+------+-------+
|firstname|lastname|upload|product|
+---------+--------+------+-------+
|    alice|       a|   100|apple  | 
|      bob|       b|    23|orange |
+---------+--------+------+-------+

TABLE 2:

+---------+--------+------+-------+
|firstname|lastname|books |active |
+---------+--------+------+-------+
|    alice|       a|   10 |yes    | 
|      bob|       b|    2 |no     |
+---------+--------+------+-------+

决赛 TABLE:

+---------+--------+------+-------+-----+------+
|firstname|lastname|upload|product|books|active|
+---------+--------+------+-------+-----+------+
|    alice|       a|   100|apple  | 10  | yes  |
|      bob|       b|    23|orange | 2   | no   | 
+---------+--------+------+-------+-----+------+

只是给你一个研究的方向

select *
from table1
join table2
using(firstname, lastname)          

如果应用于您问题中的示例数据 - 输出为