2016-09-20 36 views
-1

我試圖使用Google BigQuery來確定每個州的人均醫療費用。Google BigQuery/SQL:從單獨的表格中劃分出一列一列

我已經有每個州的州人口數(表示爲總數)以及每個州的總醫療費用(費用)。我試圖按每個州的人口來劃分總成本。

在查詢運行的那一刻,每個條目都是空的。我承認BigQuery和SQL都是初學者。

這裏是我的代碼:

SELECT State, Cost/Total AS PerCapita 
FROM medicare.population, medicare.CostByState 
GROUP BY State, PerCapita; 

一件事,可能會導致的問題是,「州」列在這兩個「人口」和「CostByState」表存在。不知道如何解決這個問題。

這裏是我的表: population CostByState

回答

3

你似乎有每個國家的一行數據,所以你只需要一個JOIN

SELECT p.State, cbs.Cost/p.Total AS PerCapita 
FROM medicare.population p JOIN 
    medicare.CostByState cbs 
    ON p.state = cbs.state; 

如果表中每個狀態有多個行,則只需要聚合。

0

確實需要加入。

如果這種關係是一對一的話,那你就很好。但如果不是,您可能需要某種類型的聚合

總額(成本)/總額(總額)按per_capita