0
我有一个table pline_sp
,它有一个包含SDO_GEOMETRY
多边形的几何列。每个多边形都有一个类类型。我编写了一个SQL查询来查找类C1
,并找到位于类C1
中的类C2
的所有多边形,然后求和所有区域。Oracle空间计算区域内的多边形组中的一组多边形内部的多边形ID
我不知道这是最好的方式,但查询如下:
select sum(SDO_GEOM.SDO_AREA(result.geom, 0.005, 'unit=SQ_KM'))
from (SELECT a.geom
FROM pline_sp a,
(select A.Geom from pline_sp A where A.class='C1') B
WHERE SDO_RELATE(A.Geom, B.Geom, 'mask=inside') = 'TRUE'
AND A.Class='C2') result;
有从C1
类约7多边形表,每一个具有不同label
。
我想得到里面的多边形面积的总和,由标签分隔,不是所有的总和。
我想要的结果是这样的:
Label Area
--------------
l324 321.54
l543 325.21
...
它有没有在SQL任何解决方案或我应该写程序? 谢谢。