STV_LineStringPoint
Retrieves the vertices of a linestring or multilinestring. The values returned are points of either GEOMETRY or GEOGRAPHY type depending on the input object's type. GEOMETRY points inherit the SRID of the input object.
STV_LineStringPoint is an analytic function. For more information, see Analytic Functions.
Behavior Type
Syntax
STV_LineStringPoint( g ) OVER( [PARTITION NODES] ) AS
Arguments
g |
Linestring or multilinestring, value of type GEOMETRY or GEOGRAPHY |
Returns
GEOMETRY or GEOGRAPHY
Supported Data Types
Data Type | GEOMETRY | GEOGRAPHY (Perfect Sphere) | GEOGRAPHY (WGS84) |
Point |
No |
No |
No |
Multipoint |
No |
No |
No |
Linestring |
Yes |
Yes |
Yes |
Multilinestring |
Yes |
Yes |
Yes |
Polygon |
No |
No |
No |
Multipolygon |
No |
No |
No |
GeometryCollection |
No |
No |
No |
Examples
The following examples show how to use STV_LineStringPoint.
Returns the vertices of the geometry linestring and their SRID:
=> SELECT ST_AsText(Point), ST_SRID(Point) FROM (SELECT STV_LineStringPoint( ST_GeomFromText('MULTILINESTRING((1 2, 2 3, 3 1, 4 2), (10 20, 20 30, 30 10, 40 20))', 4269)) OVER () AS Point) AS foo; ST_AsText | ST_SRID ---------------+--------- POINT (1 2) | 4269 POINT (2 3) | 4269 POINT (3 1) | 4269 POINT (4 2) | 4269 POINT (10 20) | 4269 POINT (20 30) | 4269 POINT (30 10) | 4269 POINT (40 20) | 4269 (8 rows)
Returns the vertices of the geography linestring:
=> SELECT ST_AsText(g) FROM (SELECT STV_LineStringPoint( ST_GeographyFromText('MULTILINESTRING ((42.1 71.0, 41.4 70.0, 41.3 72.9), (42.99 71.46, 44.47 73.21)', 4269)) OVER () AS g) AS line_geog_points; ST_AsText --------------------- POINT (42.1 71.0) POINT (41.4 70.0) POINT (41.3 72.9) POINT (42.99 71.46) POINT (44.47 73.21) (5 rows)