大查询SQL。使用相同列组合表(无PK)

时间:2017-07-18 16:02:35

标签: mysql sql

我试图将3个以上的NOAA GSOD数据表组合在一起,将数据放在一个超级表中。我试图将站表连接到结果数据上,然后按国家/地区进行过滤。

我只能在一张桌子上做到这一点,但不能用于更多。下面是我尝试修改代码来实现这一目标。我尝试了几种不同的修改但没有成功:(

SELECT * FROM [bigquery-public-data:noaa_gsod.gsod2016] AS gsod2016, 
[bigquery-public-data:noaa_gsod.gsod2015] AS gsod2015 JOIN [bigquery-public-
data:noaa_gsod.stations] AS stations ON gsod2016.stn = stations.USAF AND 
gsod2015.stn = stations.USAF WHERE stations.country = "CB"

NOAA GSOD bigquery数据: https://bigquery.cloud.google.com/table/bigquery-public-data:noaa_gsod.gsod2016

1 个答案:

答案 0 :(得分:1)

使用1个标准内部联接或(最好是内部联接语法)并确保表格的顺序正确,您不能在表格上加入,除非它是'在ON之上定义。

SELECT * 
FROM [bigquery-public-data:noaa_gsod.stations] AS stations 
INNER JOIN [bigquery-public-data:noaa_gsod.gsod2016] AS gsod2016
  ON gsod2016.stn = stations.USAF 
INNER JOIN [bigquery-public-data:noaa_gsod.gsod2015] AS gsod2015 
  ON gsod2015.stn = stations.USAF 
WHERE stations.country = "CB"

现在所有这些都说你真的是指加入,还是你想UNION ALL 数据并添加一年