ST_StartPoint verwendet eine Linienfolge und gibt einen Punkt zurück, der den ersten Punkt der Linienfolge darstellt.
Syntax
db2gse.ST_StartPoint(c db2gse.ST_Curve)
Rückgabetyp
db2gse.ST_Point
Beispiele
Die folgende Anweisung CREATE TABLE erstellt die Tabelle STARTPOINT_TEST. STARTPOINT_TEST enthält zwei Spalten: die Spalte GID, die die Zeilen der Tabelle eindeutig kennzeichnet, und die Linienspalte LN1.
CREATE TABLE STARTPOINT_TEST (gid integer, ln1 db2gse.ST_LineString)
Die folgenden INSERT-Anweisungen fügen die Linienfolgen in die Spalte LN1 ein. Die erste Zeile hat keine Z-Koordinaten oder Maßangaben; die zweite dagegen schon.
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)))
Die folgende Anweisung SELECT und die entsprechende Ergebnisgruppe zeigen, wie die Funktion ST_StartPoint den ersten Punkt jeder Linienfolge extrahiert. Die Funktion ST_AsText wandelt den Punkt in sein Textformat um. Der erste Punkt in der Liste hat keine Z-Koordinate und kein Maß; der zweite Punkt hat beides, weil diese Elemente auch in der Quellenlinie enthalten sind.
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.