共用方式為


st_geometryn

這很重要

這項功能目前處於 公開預覽版

回傳輸入多重幾何中以 1 為基礎的第 n 個元素,如果不存在則回傳 None

關於對應的 Databricks SQL 函式,請參見 st_geometryn 函數

語法

from pyspark.databricks.sql import functions as dbf

dbf.st_geometryn(col1=<col1>, col2=<col2>)

參數

參數 類型 Description
col1 pyspark.sql.Columnstr 幾何的值。
col2 pyspark.sql.Columnint 返回的幾何圖形之索引從 1 開始。

範例

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('GEOMETRYCOLLECTION(POINT(4 5),LINESTRING(10 3,24 37,44 85))',)], ['wkt'])
df.select(dbf.st_asewkt(dbf.st_geometryn(dbf.st_geomfromtext('wkt', 4326), 2)).alias('result')).collect()
[Row(result='SRID=4326;LINESTRING(10 3,24 37,44 85)')]
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('MULTIPOLYGON(EMPTY,((0 0,10 0,0 10,0 0),(1 1,9 1,1 9,1 1)))',)], ['wkt'])
df.select(dbf.st_asewkt(dbf.st_geometryn(dbf.st_geomfromtext('wkt'), 2)).alias('result')).collect()
[Row(result='POLYGON((0 0,10 0,0 10,0 0),(1 1,9 1,1 9,1 1))')]
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('POINT(1 2)',)], ['wkt'])
df.select(dbf.st_asewkt(dbf.st_geometryn(dbf.st_geomfromtext('wkt'), 1)).alias('result')).collect()
[Row(result='POINT(1 2)')]