Comment on page

# measurements

CORE
This module contains functions that compute measurements of distance, area and angles. There are also functions to compute geometry values determined by measurements.

### ST_AREA

ST_AREA(geom)
Description
If `Geometry` g is areal, returns the area of its surface in square units of the coordinate reference system (for example, `degrees^2` for EPSG:4326). Returns `0.0` for non-areal geometries (e.g. `Points`, non-closed `LineStrings`, etc.).
• `geom`: `Geometry` input geom.
Return type
`Double`
Example
1
SELECT carto.ST_AREA(carto.ST_MAKEBBOX(0, 0, 2, 2));
2
-- 4

### ST_DISTANCE

ST_DISTANCE(geomA, geomB)
Description
Returns the 2D Cartesian distance between the two geometries in units of the coordinate reference system (e.g. degrees for EPSG:4236).
• `geomA`: `Geometry` input geom A.
• `geomB`: `Geometry` input geom B.
Return type
`Double`
Example
1
SELECT carto.ST_DISTANCE(carto.ST_POINT(0, 0), carto.ST_POINT(0, 5));
2
-- 5

### ST_DISTANCESPHERE

ST_DISTANCESPHERE(geomA, geomB)
Description
Approximates the minimum distance (in meters) between two longitude/latitude geometries assuming a spherical earth.
• `geomA`: `Geometry` input geom A.
• `geomB`: `Geometry` input geom B.
Return type
`Double`
Example
1
SELECT carto.ST_DISTANCESPHERE(carto.ST_POINT(0, 0), carto.ST_POINT(0, 5)) / 1000;
2
-- 555.9753986718438 (distance in km)

### ST_LENGTH

ST_LENGTH(line)
Description
Returns the 2D path length of linear geometries, or perimeter of areal geometries, in units of the the coordinate reference system (e.g. degrees for EPSG:4236). Returns `0.0` for other geometry types (e.g. `Point`).
• `line`: `LineString` input line.
Return type
`Double`
Example
1
SELECT carto.ST_LENGTH(carto.ST_GEOMFROMWKT('LINESTRING(0 0, 0 3, 5 3)'));
2
-- 8

### ST_LENGTHSPHERE

ST_LENGTHSPHERE(line)
Description
Approximates the 2D path length of a `LineString` geometry using a spherical earth model. The returned length is in units of meters. The approximation is within 0.3% of st_lengthSpheroid and is computationally more efficient.
• `line`: `LineString` input line.
Return type
`Double`
Example
1
SELECT carto.ST_LENGTHSPHERE(carto.ST_GEOMFROMWKT('LINESTRING(0 0, 0 3, 5 3)')) / 1000;
2
-- 888.7982099954688 (distance in km)