ST_AsGeoJSON - Amazon Redshift

Amazon Redshift unterstützt ab dem 1. November 2025 nicht mehr die Erstellung neuer Python-UDFs. Wenn Sie Python-UDFs verwenden möchten, erstellen Sie die UDFs vor diesem Datum. Bestehende Python-UDFs funktionieren weiterhin wie gewohnt. Weitere Informationen finden Sie im Blog-Posting.

ST_AsGeoJSON

ST_AsGeoJSON gibt die GeoJSON-Darstellung einer Eingabegeometrie oder -geografie zurück. Weitere Informationen zu GeoJSON finden Sie unter GeoJSON bei Wikipedia.

Bei 3DZ- und 4D-Geometrien ist die Ausgabegeometrie eine 3DZ-Projektion der 3DZ- oder 4D-Eingabegeometrie. Das heißt, dass in der Ausgabe die Koordinaten x, y und z vorhanden sind. Bei 3DM-Geometrien ist die Ausgabegeometrie eine 2D-Projektion der 3DM-Eingabegeometrie. Das heißt, dass in der Ausgabe nur die Koordinaten x und y vorhanden sind.

Für Eingabegeografien gibt ST_AsGeoJSON die GeoJSON-Darstellung einer Eingabegeometrie zurück. Die Koordinaten der Geografie werden mit der angegebenen Genauigkeit angezeigt.

Syntax

ST_AsGeoJSON(geo)
ST_AsGeoJSON(geo, precision)

Argumente

geo

Ein Wert vom Datentyp GEOMETRY oder GEOGRAPHY oder ein Ausdruck, der zu einem GEOMETRY- oder GEOGRAPHY-Typ ausgewertet wird.

precision

Ein Wert vom Datentyp INTEGER. Für Geometrien werden die Koordinaten von geo mit der angegebenen Genauigkeit 1–20 angezeigt. Wenn precision nicht angegeben ist, ist der Standardwert 15. Für Geografien werden die Koordinaten von geo mit der angegebenen Genauigkeit angezeigt. Wenn precision nicht angegeben ist, ist der Standardwert 15.

Rückgabetyp

VARCHAR

Wenn geo null ist, wird null zurückgegeben.

Wenn Präzision null ist, wird null zurückgegeben.

Wenn das Ergebnis größer als 64-KB VARCHAR ist, wird ein Fehler zurückgegeben.

Beispiele

Das folgende SQL gibt die GeoJSON-Darstellung eines Linestrings zurück.

SELECT ST_AsGeoJSON(ST_GeomFromText('LINESTRING(3.141592653589793 -6.283185307179586,2.718281828459045 -1.414213562373095)'));
st_asgeojson ---------------------------------------------------------------------------------------------------------------- {"type":"LineString","coordinates":[[3.14159265358979,-6.28318530717959],[2.71828182845905,-1.41421356237309]]}

Das folgende SQL gibt die GeoJSON-Darstellung eines Linestrings zurück. Die Koordinaten der Geometrien werden mit sechs Stellen Genauigkeit angezeigt.

SELECT ST_AsGeoJSON(ST_GeomFromText('LINESTRING(3.141592653589793 -6.283185307179586,2.718281828459045 -1.414213562373095)'), 6);
st_asgeojson ----------------------------------------------------------------------------- {"type":"LineString","coordinates":[[3.14159,-6.28319],[2.71828,-1.41421]]}

Das folgende SQL gibt die GeoJSON-Darstellung einer Geografie zurück.

SELECT ST_AsGeoJSON(ST_GeogFromText('LINESTRING(110 40, 2 3, -10 80, -7 9)'));
st_asgeojson ---------------------------------------------------------------------- {"type":"LineString","coordinates":[[110,40],[2,3],[-10,80],[-7,9]]}