ST_StartPoint toma una serie lineal y devuelve un punto que es el primer punto de la serie lineal.
Sintaxis
db2gse.ST_StartPoint(c db2gse.ST_Curve)
Tipo devuelto
db2gse.ST_Point
Ejemplos
La siguiente sentencia CREATE TABLE crea la tabla STARTPOINT_TEST. STARTPOINT_TEST tiene dos columnas: la columna de enteros GID, que identifica de forma exclusiva las filas de la tabla, y la columna tipo serie lineal LN1.
CREATE TABLE STARTPOINT_TEST (gid integer, ln1 db2gse.ST_LineString)
Las siguientes sentencias INSERT insertan las series lineales en la columna LN1. La primera serie lineal no tiene coordenadas Z ni medidas, mientras que la segunda serie lineal tiene ambas.
INSERT INTO STARTPOINT_TEST VALUES(1, db2gse.ST_LineFromText('linestring (10.02 20.01,23.73 21.92,30.10 40.23)', db2gse.coordref()..srid(0))) INSERT INTO STARTPOINT_TEST VALUES(2, db2gse.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)', db2gse.coordref()..srid(0)))
La siguiente sentencia SELECT y el conjunto de resultados correspondiente muestran cómo la función ST_StartPoint extrae el primer punto de cada serie lineal. La función ST_AsText convierte el punto en su formato de texto. El primer punto de la lista no tiene coordenada Z ni medida, mientras que el segundo punto tiene ambas porque la serie lineal fuente las tiene.
SELECT gid, CAST(db2gse.ST_AsText(db2gse.ST_StartPoint (ln1)) as varchar(60)) "Startpoint" FROM STARTPOINT_TEST GID Startpoint ----------- ------------------------------------------------------------ 1 POINT ( 10.02000000 20.01000000) 2 POINT ZM ( 10.02000000 20.01000000 5.00000000 7.00000000) 2 record(s) selected.