1

我正在阅读 SQLzoo.net 上的“Select within Select”教程。我突然想到我想知道每个大陆的总面积。该表world有 5 列。

  1. name是国名
  2. continent是国家所属的地方
  3. area是每个国家的总面积
  4. population存在但不需要
  5. gdp存在但不需要

我希望我的结果是两列(ContinentArea)。我希望 Area 是每个国家/地区的area总和Continent

我怎样才能将这些国家分开continent,然后将它们添加到continent返回的数据中的适当位置?

4

2 回答 2

2
select sum(area),continent
from world
group by continent

分组根据字段分组创建记录组,然后 sum 函数将组的总数相加。

于 2013-07-01T20:57:52.530 回答
2

除了 SUM 之外,您还需要使用 GROUP BY 运算符:

SELECT continent, SUM(area) as total_area
FROM table
GROUP BY continent

Group by 允许您对列进行聚合操作。

于 2013-07-01T20:58:01.470 回答