下面是我的示例表:
SELECT p.id, p.loc, t.x, t.y,t.id vertex_num
FROM my_test p, TABLE(sdo_util.getvertices(p.geom))t
where p.id in (23, 24);
id loc x y vetex_num
--------------------------------
23 RECTANGLE 1 10 1
23 RECTANGLE 15 20 2
24 LINE 1 10 1
24 LINE 15 10 2
似乎LINE的边界与矩形的边界相互作用,矩形的边界对于SDO_ON函数应该返回TRUE,
SELECT A.loc , b.loc
FROM my_test A, my_test b
WHERE SDO_ON(A.geom, B.geom) = 'TRUE';
但是没有结果,认为它显示了ANYINTERACT的结果。我已经尝试了SDO_RELATE与'mask= on'参数,但没有返回行。
任何帮助都是感激的。谢谢:)
我终于找到了!!
问题在于SRID,(我的索引和表格SRID是8307)我已经更改了支持wkt作为投影坐标的SRID。如。32774、90112、我使用了32774,并在上面进行了相同的查询,现在我得到了像预期的结果:
LOC LOC_1
----------
LINE RECT
但是我仍然不明白为什么它不能与srid 8307一起工作