适用于:
Databricks SQL
Databricks Runtime 17.1 及更高版本
Important
此功能目前以公共预览版提供。
注释
此功能在 Databricks SQL 经典仓库上不可用。 若要详细了解 Databricks SQL 仓库,请参阅 SQL 仓库类型。
返回一个线字符串 GEOMETRY 值,该值的点是几何图形输入数组中几何图形的非空点,这些几何图形应为点、线字符串或多点。
Syntax
st_makeline ( geoArray )
Arguments
-
geoArray:一个ARRAY的GEOMETRY值集合。
Returns
一个类型为 GEOMETRY 的值,表示线串。
点的顺序保留在输出行字符串中。
NULL将忽略输入数组中的任何值。
输出线字符串的 SRID 值是输入几何图形的常见 SRID 值。
输出线字符串的维度是输入几何图形的最大常见维度。
如果输入数组为空,则返回 2D 空行字符串。 在这种情况下,返回的线字符串的 SRID 为 0。 如果所有输入几何图形均为空,则返回 2D 空行字符串。 如果所有输入几何图形中的非空点总数为 1,则返回一个包含两个点的线字符串,这两个点都等于输入中唯一的非空点。
如果任何输入为NULL,该函数将返回NULL。
错误条件
- 如果任一输入几何图形不是点、线字符串或多点,该函数将返回 ST_INVALID_ARGUMENT。INVALID_TYPE。
- 如果输入几何图形没有相同的 SRID 值,函数将返回 ST_DIFFERENT_SRID_VALUES。
Examples
-- Returns a linestring with the points of the input geometries.
> SELECT st_astext(st_makeline(array(st_geomfromtext('POINT(1 2)'),st_geomfromtext('MULTIPOINT(5 6,7 8)'),st_geomfromtext('LINESTRING(5 6,7 8,-1 -3,-7 -9,-12 -20)'))));
LINESTRING(1 2,5 6,7 8,5 6,7 8,-1 -3,-7 -9,-12 -20)