使用與參考手冊

ST_OrderingEquals

ST_OrderingEquals 比較兩個幾何並傳回 1 (TRUE) (若這兩個幾何相等而且座標使用相同次序);否則會傳回 0 (FALSE)。

語法

db2gse.ST_OrderingEquals(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry)

回覆類型

Integer

範例

下列 CREATE TABLE 陳述式建立 LINESTRING_TEST 表格,它有兩個線串直欄 (L1 和 L2)。

CREATE TABLE LINESTRING_TEST (lid integer, l1 db2gse.ST_LineString, l2 db2gse.ST_LineString);

下列 INSERT 陳述式將兩個線串插入相等而且有相同座標排序的 L1 和 L2 。

INSERT INTO linestring_test VALUES (1,
db2gse.LineFromText('linestring (10.01 20.02, 21.50 12.10)', db2gse.coordref()..srid(0)),
db2gse.LineFromText('linestring (10.01 20.02, 21.50 12.10)', db2gse.coordref()..srid(0)));

下列 INSERT 陳述式將兩個線串插入相等但沒有相同座標排序的 L1 和 L2。

INSERT INTO linestring_test VALUES (2,
db2gse.LineFromText('linestring (10.01 20.02, 21.50 12.10)', db2gse.coordref()..srid(0)),
db2gse.LineFromText('linestring (21.50 12.10,10.01 20.02)', db2gse.coordref()..srid(0)));

下列 SELECT 陳述式和對應的結果集顯示 ST_Equals 函數如何傳回 1 (TRUE),不管座標次序。 若幾何不相等而且有相同座標排序,那麼 ST_OrderingEquals 函數會傳回 0 (FALSE)。

SELECT lid, db2gse.ST_Equals(l1,l2) equals, db2gse.ST_OrderingEquals(l1,l2) OrderingEquals
FROM linestring_test
lid   equals   OrderingEquals
---   ------   -----------
 1       1           1
 2       1           0


[ 頁面頂端 | 前一頁 | 下一頁 | 目錄 | 索引 ]