我有一个表(table1),其中包含:
Sub_county_name,
county_name,
total_pop(for each sub county)
我想查询一下,给出我所有子县的每个县的平均人口数,最好没有加入。
我尝试了什么:
SELECT Sub_county_name,county_name,total_pop
FROM table1
WHERE total_pop = (SELECT (SUM(total_pop)/COUNT(county_name))
FROM table1 a
WHERE a.county_name = table1.county_name);
这样运行但只给我两个条目(有100个县)。
我可以对我做错了吗?
答案 0 :(得分:0)
1)只使用一个组而不是一个连接。
2)您可以使用内置的avg()函数来获得平均值(平均值)。
select county_name, avg(total_pop) from table1 group by county_name
答案 1 :(得分:0)
您只需要在county_name上执行聚合,因此您将忽略sub_county_name。它看起来像这样:
SELECT county_name,Avg(total_pop)AS average_pop 从表1 GROUP BY county_name;
希望有所帮助!