Categories:

Geospatial functions

ST_AREAÂ¶

Returns the area of the Polygon(s) in a GEOGRAPHY or GEOMETRY object.

SyntaxÂ¶

```ST_AREA( <geography_or_geometry_expression> )
```

ArgumentsÂ¶

`geography_or_geometry_expression`

The argument must be of type GEOGRAPHY or GEOMETRY.

ReturnsÂ¶

Returns a REAL value, which represents the area:

• For GEOGRAPHY input values, the area is in square meters.

• For GEOMETRY input values, the area is computed with the same units used to define the input coordinates.

Usage notesÂ¶

• If `geography_expression` is not a Polygon, MultiPolygon, or GeometryCollection containing polygons, ST_AREA returns 0.

• If `geography_expression` is a GeometryCollection, ST_AREA returns the sum of the areas of the polygons in the collection.

ExamplesÂ¶

GEOGRAPHY examplesÂ¶

This uses the ST_AREA function with GEOGRAPHY objects to calculate the area of Earthâ€™s surface 1 degree on each side with the bottom of the area on the equator:

```SELECT ST_AREA(TO_GEOGRAPHY('POLYGON((0 0, 1 0, 1 1, 0 1, 0 0))')) AS area;
+------------------+
|             AREA |
|------------------|
| 12364036567.0764 |
+------------------+
```

GEOMETRY examplesÂ¶

The following example calls the ST_AREA function with GEOMETRY objects that represent a Point, LineString, and Polygon.

```SELECT ST_AREA(g), ST_ASWKT(g)
FROM (SELECT TO_GEOMETRY(column1) as g
from values ('POINT(1 1)'),
('LINESTRING(0 0, 1 1)'),
('POLYGON((0 0, 0 1, 1 1, 1 0, 0 0))'));
```
```+------------+--------------------------------+
| ST_AREA(G) | ST_ASWKT(G)                    |
|------------+--------------------------------|
|          0 | POINT(1 1)                     |
|          0 | LINESTRING(0 0,1 1)            |
|          1 | POLYGON((0 0,0 1,1 1,1 0,0 0)) |
+------------+--------------------------------+
```
Language: English