Google Spreadsheets:如何按洲查询人口最多的国家?

时间:2018-07-01 15:27:26

标签: google-sheets google-query-language

假设我有一张表格,其中包含国家,大陆和人口列。

如何使用Google Spreadsheets中的QUERY函数为每个大洲选择人口最多的国家?

在常规SQL中,我想我会使用HAVING,但这在这里似乎不是一个选择。

enter image description here

4 个答案:

答案 0 :(得分:2)

=SORTN(SORT(G:J,4,0),2^99,2,3,0)
  • 按人口排序的降序排列(如果尚未完成)
  • 使用SORTN删除重复项

答案 1 :(得分:0)

我建议一个助手列,用:

let a = 6;
this.setState({ a }); // Shorthand syntax for writing this.setState({ a: a });

在K2中复制下来以适合,然后:

=if(maxifs(J:J,I:I,I2)=J2,"#","")  

答案 2 :(得分:0)

我在A,B和C列中列出了排名,国家和大陆的一些建议(有点长)(对不起,输入人群的时间太长了)

要获得按降序排列的列表:

=ArrayFormula({unique(filter(C:C,C:C<>"")),
vlookup(Query(A:C,"select min(A) where A is not null group by C order by min(A) label min(A) 'Rank'"),A:C,2,false)})

要获取按大陆字母顺序排列的列表:

=ArrayFormula({Query(A:C,"select C,min(A) where A is not null group by C label min(A) 'Rank'"),
vlookup(Query(A:C,"select min(A) where A is not null group by C label min(A) 'Rank'"),A:C,2,false)})

尽管这个列表(我想像)会一直降到梵蒂冈城(大约有1,000名流行者),但是大多数国家至少有数千名居民,所以我想建立联系的可能性不大:-)

enter image description here


更新-包含人口数据
enter image description here

答案 3 :(得分:-1)

在QUERY方法中,选择Continent(人口最多),并按Continent分组:

=QUERY(Countries,"select I, max(J) GROUP BY I",1)

这将从表中返回以下结果:

Continent       max Population
Africa          173615345
Asia            1385566537
Australia       23342553
Europe          82726626
North America   320050716
South America   200361925