Oracle空间数据库函数使用

2014-11-24 17:21:29 · 作者: · 浏览: 0

首先说说我用的第一个函数:SDO_GEOM.SDO_BUFFER,根据官方文档的描述,这个函数是用来返回一个代表缓冲区的几何体(This function returns a geometry object representing the buffer polygon,也不知道我理解的准不准,呵呵)。官方给出了一个函数的说明:


SDO_GEOM.SDO_BUFFER(


geom IN SDO_GEOMETRY,


dim IN SDO_DIM_ARRAY,


dist IN NUMBER


[, params IN VARCHAR2]


) RETURN SDO_GEOMETRY;


or


SDO_GEOM.SDO_BUFFER(


geom IN SDO_GEOMETRY,


dist IN NUMBER,


tol IN NUMBER


[, params IN VARCHAR2]


) RETURN SDO_GEOMETRY;


SDO_GEOMETRY是oracle数据里面定义的代表空间几何体的类型,我用的是第二个函数,指定一个缓冲区的范围和容差,至于后面的params则是一串字符,用来指定一距离单位和arc_tolerance,但是我也没搞懂这个是什么意思,看来英语还是要好好补补啊。


这是我写的例子:


SELECT T.TOWERNAME , SDO_GEOM.SDO_BUFFER(T.STATIONMAP , 500, 1,
'unit=km arc_tolerance=0.05')
FROM DMSDKY.TB_PG_TOWERINFO t
WHERE T.TOWERCODE ='12M00000035385713'


显示的结果如下:


Oracle空间数据库函数使用


--------------------------------------分割线 --------------------------------------


--------------------------------------分割线 --------------------------------------