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 (booleano)

Ejemplo

La siguiente declaración CREATE TABLE crea la tabla LINESTRING_TEST, que tiene dos columnas de cadena, ln1 y ln2.

CREATE TABLE linestring_test ( lid integer, ln1 sde.st_geometry, 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_geometry ('linestring (10.01 20.02, 21.50 12.10)', 0), sde.st_geometry ('linestring (21.50 12.10, 10.01 20.02)', 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 (21.50 12.10, 10.01 20.02)', 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          0

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          f
9/11/2013