🖥️ IT, 컴퓨터/🏁 SQL・빅쿼리

[GIS] ST_CENTROID, ST_CENTROID_agg 함수

김 홍시 2024. 7. 3.
반응형

ST_CENTROIDST_CENTROID_AGG는 Google BigQuery에서 지리적 데이터의 중심점을 계산하는 데 사용되는 함수들입니다. 이 두 함수는 각각 개별 지리적 객체와 지리적 객체의 집합에 대한 중심점을 계산하는 데 사용됩니다.

ST_CENTROID

ST_CENTROID 함수는 주어진 GEOGRAPHY 객체의 중심점을 계산하여 반환합니다. 중심점은 지리적 객체의 중심에 위치한 점으로, 객체의 모든 지리적 위치를 가장 잘 대표하는 점입니다.

사용법

ST_CENTROID(geography)
  • geography: 중심점을 계산할 GEOGRAPHY 객체입니다.

예시

  1. 점의 중심점 계산

     SELECT ST_CENTROID(ST_GEOGFROMTEXT('POINT(-122.084 37.422)')) AS centroid;

    이 쿼리는 단일 점의 중심점을 계산합니다.

  2. 다각형의 중심점 계산

     SELECT ST_CENTROID(ST_GEOGFROMTEXT('POLYGON((30 10, 40 40, 20 40, 10 20, 30 10))')) AS centroid;

    이 쿼리는 다각형의 중심점을 계산합니다.

ST_CENTROID_AGG

ST_CENTROID_AGG 함수는 여러 GEOGRAPHY 객체의 집합에 대한 전체 중심점을 계산합니다. 이 함수는 주어진 GEOGRAPHY 객체들의 무게 중심을 계산하여 하나의 중심점을 반환합니다.

사용법

ST_CENTROID_AGG(geography_expression)
  • geography_expression: 중심점을 계산할 GEOGRAPHY 객체들의 집합입니다.

예시

  1. 여러 점의 중심점 계산

     SELECT ST_CENTROID_AGG(ST_GEOGFROMTEXT('POINT(-122.084 37.422)'), ST_GEOGFROMTEXT('POINT(-122.085 37.423)')) AS centroid;

    이 쿼리는 두 개의 점의 집합에 대한 전체 중심점을 계산합니다.

  2. 여러 다각형의 중심점 계산

     SELECT ST_CENTROID_AGG(geog) AS centroid
     FROM (SELECT ST_GEOGFROMTEXT('POLYGON((30 10, 40 40, 20 40, 10 20, 30 10))') AS geog
           UNION ALL
           SELECT ST_GEOGFROMTEXT('POLYGON((20 20, 30 30, 10 30, 0 10, 20 20))') AS geog);

    이 쿼리는 두 개의 다각형의 집합에 대한 전체 중심점을 계산합니다.

요약

  • ST_CENTROID: 단일 GEOGRAPHY 객체의 중심점을 계산합니다.
  • ST_CENTROID_AGG: 여러 GEOGRAPHY 객체의 집합에 대한 전체 중심점을 계산합니다.

이 함수들은 지리적 데이터 분석에서 중요한 역할을 하며, 데이터의 공간적 분포를 이해하고 시각화하는 데 유용합니다.

반응형

댓글