ST_PointN
Definición
ST_PointN toma un ST_LineString y un índice de enteros y devuelve un punto que es el enésimo vértice en la ruta de ST_LineString.
Sintaxis
sde.st_pointn (ln1 sde.st_linestring, index integer)
Tipo de devolución
ST_Point
Ejemplo
La tabla pointn_test se crea con la columna gid, que identifica exclusivamente cada fila, y la columna de ST_LineString ln1. Las declaraciones INSERT insertan dos valores de cadena de texto de líneas. La primera cadena de texto de líneas no tienen coordenadas z o medidas, mientras que la segunda cadena de texto de líneas tiene ambas.
Oracle
CREATE TABLE pointn_test (gid integer, ln1 sde.st_geometry); INSERT INTO POINTN_TEST VALUES ( 1, sde.st_linefromtext ('linestring (10.02 20.01, 23.73 21.92, 30.10 40.23)', 0) ); INSERT INTO POINTN_TEST VALUES ( 2, sde.st_linefromtext ('linestring zm(10.02 20.01 5.0 7.0, 23.73 21.92 6.5 7.1, 30.10 40.23 6.9 7.2)', 0) );
PostgreSQL
CREATE TABLE pointn_test (gid integer, ln1 sde.st_geometry); INSERT INTO pointn_test VALUES ( 1, sde.st_linestring ('linestring (10.02 20.01, 23.73 21.92, 30.10 40.23)', 0) ); INSERT INTO pointn_test VALUES ( 2, sde.st_linestring ('linestring zm(10.02 20.01 5.0 7.0, 23.73 21.92 6.5 7.1, 30.10 40.23 6.9 7.2)', 0) );
La consulta enumera la columna gid y el segundo vértice de cada cadena de texto de líneas. La primera fila resulta en ST_Point sin una coordenada z o de medida, mientras que la segunda fila resulta en ST_Point con una coordenada z y una medida. La función ST_PointN también incluirá una coordenada z o un valor de medida si existe en la cadena de texto de líneas de origen.
Oracle
SELECT gid, sde.st_astext (sde.st_pointn (ln1, 2)) The_2ndvertex FROM POINTN_TEST; GID The_2ndvertex 1 POINT (23.73 21.92) 2 POINT ZM (23.73 21.92 6.5 7.1)
PostgreSQL
SELECT gid, sde.st_astext (sde.st_pointn (ln1, 2)) AS The_2ndvertex FROM pointn_test; gid the_2ndvertex 1 POINT (23.73 21.92) 2 POINT ZM (23.73 21.92 6.5 7.1)