Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Applies to:
Databricks SQL
Databricks Runtime 17.1 and above
Important
This feature is in Public Preview.
Note
This feature is not available on Databricks SQL Classic warehouses. To learn more about Databricks SQL warehouses, see SQL warehouse types.
Returns the n-th point from the input linestring GEOGRAPHY or GEOMETRY value.
Syntax
st_pointn ( geoExpr, indexExpr )
Arguments
geoExpr: AGEOGRAPHYorGEOMETRYvalue representing a linestring.indexExpr: AnINTEGERvalue indicating the 1-based position in the linestring of the point that should be returned.
Returns
A value of type GEOGRAPHY or GEOMETRY, representing the point at the indexExpr-th position of the input linestring.
The SRID value of the output point is equal to that of the input GEOGRAPHY or GEOMETRY value.
The dimension of the output point is the same as that of the input GEOGRAPHY or GEOMETRY value.
The function returns NULL if any of the inputs is NULL.
Error conditions
- If the value of
geoExpris not a linestring, the function returns ST_INVALID_ARGUMENT.INVALID_TYPE. - If the value of
geoExpris an empty linestring, the function returns ST_INVALID_ARGUMENT.EMPTY_LINESTRING. - If the absolute value of the value of
indexExpris 0 or larger than the number of points in the linestring, the function returns ST_INVALID_ARGUMENT.INVALID_INDEX_VALUE.
Examples
-- Returns the third point of the linestring counting from the left.
> SELECT st_astext(st_pointn(st_geomfromtext('LINESTRING(1 2,3 4,5 6)'), 3));
POINT(5 6)
-- Returns the third point of the linestring counting from the right.
> SELECT st_astext(st_pointn(st_geogfromtext('LINESTRING(1 2,3 4,5 6)'), -3));
POINT(1 2)