在查詢計畫中進行 JOIN
中國與印度各自有超過 10 億人口,合計占全球人口超過 30%。你想確認它們是否是人口成長最多的國家。
由於兩國都在亞洲,你蒐集了世界銀行提供的 1990 到 2017 年間所有亞洲國家的人口資料。為了簡化分析,你決定只比較兩個年份的人口數。你把最近的 2017 年人口與 1990 年人口相比,作為人口成長的指標。
印度和中國有拿下前幾名嗎?它們是自 1990 年代以來成長最多的亞洲國家嗎?
寫好查詢後,檢視查詢計畫,看看 join 對查詢步驟有什麼影響。
本練習屬於課程
改進 PostgreSQL 的查詢效能
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
SELECT old.country
, old.region
, old.population_1990
, new.population_2017
, 100*((new.population_2017 - old.population_1990)/new.population_2017::float) as population_growth
FROM pop_1990 old
INNER JOIN pop_2017 new
USING(___)
ORDER BY population_growth DESC