【发布时间】:2012-11-05 18:28:43
【问题描述】:
我还是 sql 新手,我刚刚使用 postgresql 一个星期。我有点卡住了..
我正在使用 NY 数据集 (http://workshops.opengeo.org/postgis-intro/about_data.html)。
我必须找到一种方法列出所有亚裔人口超过相应行政区平均水平的社区,并且我必须显示亚裔人口的百分比。
我想过这个:
select name, 100 * sum(c.popn_asian)/(select (avg(popn_asian)) from nyc_census_blocks group by boroname)
from nyc_neighborhoods n, nyc_census_blocks c
where (ST_Contains(n.geom, c.geom) = true )
and (sum(c.popn_asian)) > (select avg(popn_white) from nyc_census_blocks c1 group by c1.boroname)
但是我显然不会在 where 子句之后使用 sum...我想知道为什么并学习如何解决这个问题。
谢谢
【问题讨论】:
-
这个怎么样?
标签: postgresql postgis average