我正在使用SQLite空间数据库,该数据库包含该县所有地块的产权信息。其中包括地块编号字段(
PARCEL_NO
),面积(
TOTAL_ACRE
),属性值(
TOTAL_VALUE
),和所有者(
OWNER
)。每个记录都有一个主键,名为
OBJECT_ID
。
我正在尝试生成一个县内所有财产所有者的排序(降序)列表,根据他们拥有的财产数量进行排序,包括英亩和美元。
我尝试了两个查询来获取此信息:
SELECT OWNER, SUM(TOTAL_VALUE) FROM thurstonparcelsowners GROUP BY OWNER ORDER BY SUM(TOTAL_VALUE) DESC
SELECT OWNER, SUM(TOTAL_ACRE) FROM thurstonparcelsowners GROUP BY OWNER ORDER BY SUM(TOTAL_ACRE) DESC
问题是,一些较大的包裹被拆分为多个具有不同
对象\u ID
但都一样
包裹编号
,则,
总英亩
,则,
TOTAL\u值
等。例如,在下面的地图中,所有黄色高亮显示的区域实际上是一个大地块
包裹编号
,但在数据库中被分成几十个较小的地图对象(红色选定区域是其中一个具有相同
包裹编号
与其他黄色要素一样,每个要素包含相同的属性值(地块编号=12806410000,总英亩=929,所有者=常青州立学院等):
因此,当我运行上述查询时,总和会对这些对象进行计数,使929英亩的地块登记为20000多英亩(因为它对每个记录计数一次,而不是对每个地块编号计数一次)。我如何构造这些查询,以便每个地块的值只按总和计数一次?
谢谢