ST_OrderingEquals
Definición
ST_OrderingEquals compara dos ST_Geometries (Oracle) y devuelve 1 o t (PostgreSQL) si las geometrías son iguales y las coordenadas están en el mismo orden; de lo contrario, devuelve 0 (Oracle) o f (PostgreSQL).
Sintaxis
sde.st_orderingequals (g1 sde.st_geometry, g2 sde.st_geometry)
Tipo de devolución
Entero (booleana)
Ejemplo
La siguiente declaración CREATE TABLE crea la tabla LINESTRING_TEST, que tiene dos columnas ST_LineString, ln1 y ln2.
CREATE TABLE linestring_test ( lid integer, ln1 sde.st_linestring, ln2 sde.st_geometry);
La siguiente declaración INSERT inserta dos valores ST_LineString en ln1 y ln2 que son iguales y tienen la misma clasificación de coordenadas.
Oracle
INSERT INTO LINESTRING_TEST VALUES ( 1, sde.st_linefromtext ('linestring (10.01 20.02, 21.50 12.10)', 0), sde.st_linefromtext ('linestring (10.01 20.02, 21.50 12.10)', 0) );
PostgreSQL
INSERT INTO linestring_test VALUES ( 1, sde.st_linestring ('linestring (10.01 20.02, 21.50 12.10)', 0), sde.st_linestring ('linestring (10.01 20.02, 21.50 12.10)', 0) );
La siguiente declaración SELECT y el resultado correspondiente establecido muestra cómo la función ST_Equals devuelve 1 (TRUE) sin importar el orden de las coordenadas. La función ST_OrderingEquals devuelve 0 (FALSE) si las geometrías no son iguales ni tienen la misma clasificación de coordenadas.
Oracle
SELECT lid, sde.st_equals (ln1, ln2) Equals, sde.st_orderingequals (ln1, ln2) OrderingEquals FROM LINESTRING_TEST; lid Equals OrderingEquals 1 1 1
PostgreSQL
SELECT lid, sde.st_equals (ln1, ln2) AS Equals, sde.st_orderingequals (ln1, ln2) AS OrderingEquals FROM linestring_test; lid equals orderingequals 1 t t