Amazon Redshift ne prendra plus en charge la création de nouvelles fonctions Python définies par l’utilisateur à compter du 1er novembre 2025. Si vous souhaitez utiliser des fonctions Python définies par l’utilisateur, créez-les avant cette date. Les fonctions Python définies par l’utilisateur existantes continueront de fonctionner normalement. Pour plus d’informations, consultez le billet de blog
ST_GeomFromGeoJSON
ST_GeomFromGeoJSON construit un objet de géométrie à partir de la représentation GeoJSON d’une géométrie d’entrée. Pour plus d’informations sur le format GeoJSON, consultez GeoJSON
S’il y a au moins un point avec trois coordonnées ou plus, la géométrie résultante est 3DZ, où la composante Z est nulle pour les points qui n’ont que deux coordonnées. Si tous les points de la représentation GeoJSON en entrée contiennent deux coordonnées ou sont vides, ST_GeomFromGeoJSON renvoie une géométrie 2D. La géométrie renvoyée est toujours dotée de l’identifiant de référence spatiale (SRID) 4326.
Syntaxe
ST_GeomFromGeoJSON(geojson_string)
Arguments
- geojson_string
-
Valeur de type de données
VARCHARouSUPER, ou expression qui correspond à un typeVARCHAR, qui est une représentation GeoJSON d’une géométrie.
Type de retour
GEOMETRY
Si geojson_string est null, null est renvoyé.
Si geojson_string n’est pas valide, une erreur est renvoyée.
Exemples
Le code SQL suivant renvoie une géométrie 2D représentée dans la représentation GeoJSON en entrée.
SELECT ST_AsEWKT(ST_GeomFromGeoJSON('{"type":"Point","coordinates":[1,2]}'));
st_asewkt
-----------------------
SRID=4326;POINT(1 2)
Le code SQL suivant renvoie une géométrie 3DZ représentée dans la représentation GeoJSON en entrée.
SELECT ST_AsEWKT(ST_GeomFromGeoJSON('{"type":"LineString","coordinates":[[1,2,3],[4,5,6],[7,8,9]]}'));
st_asewkt
------------------------------------------
SRID=4326;LINESTRING Z (1 2 3,4 5 6,7 8 9)
Le code SQL suivant renvoie la géométrie 3DZ quand un seul point possède trois coordonnées alors que tous les autres points ont deux coordonnées dans la représentation GeoJSON en entrée.
SELECT ST_AsEWKT(ST_GeomFromGeoJSON('{"type":"Polygon","coordinates":[[[0, 0],[0, 1, 8],[1, 0],[0, 0]]]}'));
st_asewkt
------------------------------------------------
SRID=4326;POLYGON Z ((0 0 0,0 1 8,1 0 0,0 0 0))