st_makepoint
S’applique à : Databricks Runtime 18.2 et versions ultérieures
Renvoie une valeur Geometry de point avec les coordonnées données. La fonction prend 2, 3 ou 4 valeurs numériques, représentant les coordonnées (x, y), (x, y, z) ou (x, y, z, m) du point.
Pour la fonction Databricks SQL correspondante, consultez la fonctionst_makepoint.
Syntaxe
from pyspark.databricks.sql import functions as dbf
dbf.st_makepoint(*cols)
parameter
parameter | Type | Description |
|---|---|---|
|
| Les valeurs de coordonnées. Doit comporter 2 (x, y), 3 (x, y, z) ou 4 (x, y, z, m) arguments. |
Renvoie
pyspark.sql.Column: Une valeur Geometry, représentant un point avec les coordonnées spécifiées.
La valeur SRID de la géométrie renvoyée est toujours 0.
Le nombre de coordonnées d'entrée détermine la dimension du point renvoyé : 2D si vous fournissez uniquement x et y, 3DZ si vous fournissez également z, ou 4D si vous fournissez les quatre coordonnées (x, y, z et m).
La fonction renvoie None si l’une des entrées est None.
Exemples
Crée un point 2D avec les coordonnées (10, 34).
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(10.0, 34.0)], ['x', 'y'])
df.select(dbf.st_astext(dbf.st_makepoint('x', 'y')).alias('result')).collect()
[Row(result='POINT(10 34)')]
Crée un point 3DZ avec les coordonnées (1, 2, 3).
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(1.0, 2.0, 3.0)], ['x', 'y', 'z'])
df.select(dbf.st_astext(dbf.st_makepoint('x', 'y', 'z')).alias('result')).collect()
[Row(result='POINT Z (1 2 3)')]
Crée un point 4D avec les coordonnées (1, 2, 3, 4).
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(1.0, 2.0, 3.0, 4.0)], ['x', 'y', 'z', 'm'])
df.select(dbf.st_astext(dbf.st_makepoint('x', 'y', 'z', 'm')).alias('result')).collect()
[Row(result='POINT ZM (1 2 3 4)')]
Le SRID de la géométrie retournée est toujours 0.
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(10.0, 34.0)], ['x', 'y'])
df.select(dbf.st_srid(dbf.st_makepoint('x', 'y')).alias('result')).collect()
[Row(result=0)]
Le type de la géométrie renvoyée est toujours geometry(0).
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(10.0, 34.0)], ['x', 'y'])
df.select(dbf.typeof(dbf.st_makepoint('x', 'y')).alias('result')).collect()
[Row(result='geometry(0)')]
La fonction renvoie None si l’une des entrées est None.
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(10.0, None)], ['x', 'y'])
df.select(dbf.st_astext(dbf.st_makepoint('x', 'y')).alias('result')).collect()
[Row(result=None)]