Benutzer- und Referenzhandbuch

ST_PointN

ST_PointN verwendet eine Linienfolge und einen ganzzahligen Index und gibt einen Punkt zurück, der den n-ten Scheitelpunkt im Verlauf der Linienfolge darstellt.

Syntax

db2gse.ST_PointN(l db2gse.ST_Curve, n Integer)

Rückgabetyp

db2gse.ST_Point

Beispiele

Die folgende Anweisung CREATE TABLE erstellt die Tabelle POINTN_TEST mit zwei Spalten: der Spalte GID, die jede Zeile eindeutig kennzeichnet, und der Linienspalte LN1.

CREATE TABLE POINTN_TEST (gid integer, ln1 db2gse.ST_LineString) 

Die folgenden INSERT-Anweisungen fügen zwei Linienwerte ein. Die erste Zeile hat keine Z-Koordinaten oder Maßangaben; die zweite dagegen schon.

INSERT INTO POINTN_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 POINTN_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 listet die Spalte GID und den zweiten Scheitelpunkt jeder Linienfolge auf. Die erste Zeile gibt einen Punkt zurück, der weder Z-Koordinate noch ein Maß enthält; der aus der zweiten Zeile resultierende Punkt enthält eine Z-Koordinate und ein Maß. Die Funktion ST_PointN gibt Punkte mit einer Z-Koordinate oder einem Maß zurück, falls diese in der Quellenlinie enthalten sind.

SELECT gid, CAST(db2gse.ST_AsText(db2gse.ST_PointN(ln1,2)) AS varchar(60)) 
"The 2nd vertice"
FROM POINTN_TEST
 
GID         The 2nd vertice
----------- ------------------------------------------------------------
          1 POINT ( 23.73000000 21.92000000)
          2 POINT ZM ( 23.73000000 21.92000000 7.00000000 7.10000000)
 
  2 record(s) selected. 


[ Seitenanfang | Vorherige Seite | Nächste Seite | Inhaltsverzeichnis | Index ]