ST_OrderingEquals confronta le due geometrie e restituisce 1 (TRUE) se le geometrie sono uguali e le coordinate sono nello stesso ordine; in caso contrario restituisce 0 (FALSE).
Sintassi
db2gse.ST_OrderingEquals(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry)
Tipo di ritorno
Integer
Esempi
La seguente istruzione CREATE TABLE crea la tabella LINESTRING_TEST, che contiene due colonne di stringa lineare, L1 e L2.
CREATE TABLE LINESTRING_TEST (lid integer, l1 db2gse.ST_LineString, l2 db2gse.ST_LineString);
La seguente istruzione INSERT inserisce due stringhe lineari uguali, le cui coordinate presentano lo stesso ordine, nelle colonne L1 e 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)));
La seguente istruzione INSERT inserisce due stringhe lineari uguali, le cui coordinate non presentano lo stesso ordine, nelle colonne L1 e 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)));
La seguente istruzione SELECT e la serie di risultati corrispondente mostrano il modo in cui la funzione ST_Equals restituisce 1 (TRUE) indipendente dall'ordine delle coordinate. La funzione ST_OrderingEquals restituisce 0 (FALSE) se le geometrie non sono uguali e non presentano lo stesso ordine di coordinate.
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