用户指南和参考

LocateBetween

LocateBetween 接受几何图形对象和两个测量位置,并返回表示两个测量位置之间的一组断开路径的几何图形。

语法

db2gse.LocateBetween(g db2gse.ST_Geometry, adistance Double, anotherdistance Double)

返回类型

db2gse.ST_Geometry

示例

下列 CREATE TABLE 语句创建 LOCATEBETWEEN_TEST 表。LOCATEBETWEEN_TEST 具有两列: GID 列和 G1 多线条列,前者唯一地标识每行,后者存储样本几何图形。

CREATE TABLE LOCATEBETWEEN_TEST (gid integer, g1 db2gse.ST_Geometry)

下列 INSERT 语句将两行插入 LOCATEBETWEEN_TEST 表。 第一行为多线条,第二行为多个点。

INSERT INTO db2gse.LOCATEBETWEEN_TEST
VALUES(1,db2gse.ST_MLineFromText('multilinestring m ((10.29 19.23 5,23.82 20.29 6,
                                           30.19 18.47 7,45.98 20.74 8),
                                          (23.82 20.29 6,30.98 23.98 7,
                                      42.92 25.98 8))',
                      db2gse.coordref()..srid(0)))
 
INSERT INTO db2gse.LOCATEBETWEEN_TEST
VALUES(2, db2gse.ST_MPointFromText('multipoint m (10.29 19.23 5,23.82 20.29 6,
30.19 18.47 7,45.98 20.74 8,23.82 20.29 6,
30.98 23.98 7,42.92 25.98 8)',
                        db2gse.coordref()..srid(0)))

下列 SELECT 语句和相应结果集显示 LocateBetween 函数如何定位位于度量单位 6.5 和 7.5 (含二者)之间的度量单位。第一行返回包含几个线条的多线条。第二行返回多个点,因为源数据为多个点。 当源数据的维数为 0(点或多个点)时,需要准确的匹配。

SELECT gid, CAST(db2gse.ST_AsText(db2gse.LocateBetween (g1,6.5,7.5))
       AS varchar(96)) "Geometry"
FROM LOCATEBETWEEN_TEST
 
GID         Geometry
----------- -------------------------------------------------------------------
          1 MULTILINESTRING M ( 27.01000000 19.38000000 6.50000000, 31.19000000
18.47000000 7.00000000,38.09000000 19.61000000 7.50000000),(27.40000000 22.1400
0000 6.50000000, 30.98000000 23.98000000 7.00000000,36.95000000 24.98000000 7.5
0000000)
          2 MULTIPOINT M ( 30.19000000 18.47000000 7.00000000, 30.98000000 23.9
8000000 7.00000000)
 
  2 record(s) selected. 


[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 ]