我是靠谱客的博主 复杂金毛,最近开发中收集的这篇文章主要介绍Oracle Spacial(空间数据库)查询空间数据2空间函数与操作符的对比,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

关系操作符

语法:

操作符OVERLAPBDYDISJOINT(geometry1,geometry2);

1、SDO_ANYINTERACT

2、SDO_CONTAINS

3、SDO_COVEREDBY

4、SDO_COVERS

5、SDO_EQUAL

6、SDO_INSIDE

7、SDO_ON

8、SDO_OVERLAPBDYDISJOINT

9、SDO_OVERLAPBDYINTERSECT

10、SDO_OVERLAPS

11、SDO_TOUCH

11g,支持3维的操作符有:

SDO_ANYINTERACT

SDO_FILTER

SDO_INSIDE (for solid geometries only)

SDO_NN

SDO_WITHIN_DISTANCE

 

为了获得最优的执行计划,当查询窗口(空间操作符的第二个参数)来

自于表时,请始终指定/*+ ordered */ 提示

 

SELECT/*+ ORDERED NO_INDEX(b IDX_I_POLE_S_FID) */

 b.name

  FROM i_exch_s a, i_pole_s b

 WHERE sdo_within_distance(b.gwm_geometry,

                          a.gwm_geometry,

                           'distance=5') = 'TRUE'

   AND a.gwm_fid IN(52062747,52062749)

   AND b.gwm_fid = 52598309;

空间函数与操作符的对比

1、 空间操作符使用的表必须有空间索引;

2、 空间操作符执行速度比函数快,因此可以采用操作符的情况下就使用操作符

3、使用空间操作符时,如果查询窗口来自于一个表,加上 /*+ORDERED */ 这个hint

最后

以上就是复杂金毛为你收集整理的Oracle Spacial(空间数据库)查询空间数据2空间函数与操作符的对比的全部内容,希望文章能够帮你解决Oracle Spacial(空间数据库)查询空间数据2空间函数与操作符的对比所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(57)

评论列表共有 0 条评论

立即
投稿
返回
顶部