- Categorias:
ST_AREA¶
Retorna a área do(s) polígono(s) em um objeto GEOGRAPHY ou GEOMETRY.
Sintaxe¶
ST_AREA( <geography_or_geometry_expression> )
Argumentos¶
geography_or_geometry_expression
O argumento deve ser do tipo GEOGRAPHY ou GEOMETRY.
Retornos¶
Retorna um valor REAL, que representa a área:
Para valores de entrada GEOGRAPHY, a área está em metros quadrados.
Para valores de entrada GEOMETRY, a área é computada com as mesmas unidades usadas para definir as coordenadas de entrada.
Notas de uso¶
Se
geography_expression
não for um polígono, MultiPolygon ou GeometryCollection contendo polígonos, ST_AREA retorna 0.Se
geography_expression
for um GeometryCollection, ST_AREA devolve a soma das áreas dos polígonos da coleção.
Exemplos¶
Exemplos GEOGRAPHY¶
Isso usa a função ST_AREA com objetos GEOGRAPHY para calcular a área da superfície terrestre 1 grau em cada lado com o piso da área no equador:
SELECT ST_AREA(TO_GEOGRAPHY('POLYGON((0 0, 1 0, 1 1, 0 1, 0 0))')) AS area; +------------------+ | AREA | |------------------| | 12364036567.0764 | +------------------+
Exemplos GEOMETRY¶
O exemplo a seguir chama a função ST_AREA com objetos GEOMETRY que representam um ponto, LineString e polígono.
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)) | +------------+--------------------------------+