【发布时间】:2013-05-04 14:05:30
【问题描述】:
我正在尝试找到人口密度最低的部门,为此我做了以下操作:
SELECT P.edname, MIN((P.total_area*1000)/P.total2011) AS "Lowest population density"
FROM eds_census2011 P
GROUP BY P.edname
HAVING COUNT (*)> 1
total_area 乘以 1000(因此以平方米为单位)除以总人口。
我只想要一个显示除法的记录 (edname) 和人口密度计算 (MIN((P.total_area*1000)/P.total2011)),而不是我得到所有记录 - 甚至没有排序......
问题是我必须按 edname 对其进行分组,如果我遗漏了 GROUP BY 和 HAVING 行,我会收到错误消息。非常感谢任何帮助!
【问题讨论】:
-
multiplied by 1000 (so it is in square metres).. 这很奇怪。你的基本单位是什么? 31.623x31.623 米的正方形?难以置信。
标签: sql postgresql group-by min