카테고리:

지리 공간 함수

ST_AREA

GEOGRAPHY 또는 GEOMETRY 오브젝트에 있는 다각형의 면적을 반환합니다.

구문

ST_AREA( <geography_or_geometry_expression> )
Copy

인자

geography_or_geometry_expression

인자는 GEOGRAPHY 또는 GEOMETRY 형식이어야 합니다.

반환

면적을 나타내는 REAL 값을 반환합니다.

  • GEOGRAPHY 입력값의 경우 면적은 제곱미터 단위입니다.

  • GEOMETRY 입력값의 경우 면적은 입력 좌표를 정의하는 데 사용되는 것과 동일한 단위로 계산됩니다.

사용법 노트

  • geography_expression 이 Polygon, MultiPolygon, 또는 다각형을 포함하는 GeometryCollection이 아닌 경우, ST_AREA는 0을 반환합니다.

  • geography_expression 이 GeometryCollection인 경우, ST_AREA는 컬렉션에 있는 다각형 영역의 합계를 반환합니다.

GEOGRAPHY 예

이는 GEOGRAPHY 오브젝트와 함께 ST_AREA 함수를 사용하여 적도상 면적의 바닥을 기준으로 각 면에서 1도씩 지구 표면의 면적을 계산합니다.

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

GEOMETRY 예

다음 예제에서는 Point, LineString, Polygon을 나타내는 GEOMETRY 오브젝트로 ST_AREA 함수를 호출합니다.

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))'));
Copy
+------------+--------------------------------+
| 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)) |
+------------+--------------------------------+
Copy