【问题标题】:Join a table with others two on BigQuery在 BigQuery 上与其他两个加入一个表
【发布时间】:2015-11-15 19:39:27
【问题描述】:

我有 3 个表,一个是一个巨大的表,另一个有我需要查询行的参考。

例如:

Table1:        Table2:     Table3:
|value|num|    |value|     |value|
| AAA | 2 |    | AAA |     | BBB |
| BBB | 6 |    | CCC |     | EEE |
| CCC | 3 |
| DDD | 7 |
| EEE | 1 |

它应该返回:

|value|num|
| AAA | 2 |
| BBB | 6 |    
| CCC | 3 |
| EEE | 1 |

我需要思考我需要做的是:

Select *
from [table1] as A
join [table2] as B
on A.value=B.value
join [table3] as C
on A.value=C.value

我正在使用 Bigquery,我不知道我是否有任何限制。

提前谢谢你。

【问题讨论】:

  • 您是否尝试过执行查询?
  • 不清楚您想要什么... Table1 中的值存在于 Table2 和 Table3 中?
  • SELECT * FROM (查询 1), (查询 2);这正是我所需要的

标签: sql google-bigquery


【解决方案1】:

我认为你很接近。但看起来你想要一个UNION

Select *
from [table1] as A
   join [table2] as B
   on A.value=B.value
UNION
Select *
from [table1] as A
   join [table3] as C
   on A.value=C.value

编辑

看起来 bigquery 不支持 UNION,但有这个解决方法。

SELECT * FROM (query 1), (query 2);

它的作用与:

SELECT * from query1 UNION select * from query 2

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多