ST_AsGeoJSON
ST_AsGeoJSON returns the GeoJSON representation of an input geometry or geography. For more
information about GeoJSON, see GeoJSON
For 3DZ and 4D geometries, the output geometry is a 3DZ projection of the input 3DZ or 4D geometry.
That is, the x
, y
, and z
coordinates are present in the output.
For 3DM geometries, the output geometry is a 2D projection of the input 3DM geometry.
That is, only x
and y
coordinates are present in the output.
For input geographies, ST_AsGeoJSON returns the GeoJSON representation of an input geography. The coordinates of the geography are displayed using the specified precision.
Syntax
ST_AsGeoJSON(geo)
ST_AsGeoJSON(geo, precision)
Arguments
- geo
-
A value of data type
GEOMETRY
orGEOGRAPHY
, or an expression that evaluates to aGEOMETRY
orGEOGRAPHY
type. - precision
-
A value of data type
INTEGER
. For geometries, the coordinates of geo are displayed using the specified precision 1–20. If precision is not specified, the default is 15. For geographies, the coordinates of geo are displayed using the specified precision. If precision is not specified, the default is 15.
Return type
VARCHAR
If geo is null, then null is returned.
If precision is null, then null is returned.
If the result is larger than a 64-KB VARCHAR
, then an error is
returned.
Examples
The following SQL returns the GeoJSON representation of a linestring.
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]]}
The following SQL returns the GeoJSON representation of a linestring. The coordinates of the geometries are displayed with six digits of precision.
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]]}
The following SQL returns the GeoJSON representation of a geography.
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]]}