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

[GIS] ST_CONTAINS 함수 :: 객체 간 포함 관계 확인

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

ST_CONTAINS는 Google BigQuery에서 사용되는 함수로, 하나의 GEOGRAPHY 객체가 다른 GEOGRAPHY 객체를 포함하고 있는지 여부를 판단합니다. 이 함수는 지리적 객체 간의 포함 관계를 확인하는 데 유용합니다.

사용법

ST_CONTAINS(geography1, geography2)
  • geography1: 포함 여부를 검사할 GEOGRAPHY 객체입니다.
  • geography2: geography1에 포함되는지 여부를 확인할 GEOGRAPHY 객체입니다.

반환값

  • ST_CONTAINS 함수는 geography1geography2를 포함하고 있으면 TRUE를, 그렇지 않으면 FALSE를 반환합니다.

예시

  1. 다각형이 점을 포함하는지 확인이 쿼리는 다각형이 점을 포함하는지 여부를 반환합니다. 결과는 TRUE입니다.
  2. SELECT ST_CONTAINS( ST_GEOGFROMTEXT('POLYGON((30 10, 40 40, 20 40, 10 20, 30 10))'), ST_GEOGFROMTEXT('POINT(30 30)') ) AS contains_point;
  3. 다각형이 다른 다각형을 포함하는지 확인이 쿼리는 첫 번째 다각형이 두 번째 다각형을 포함하는지 여부를 반환합니다. 결과는 TRUE입니다.
  4. SELECT ST_CONTAINS( ST_GEOGFROMTEXT('POLYGON((30 10, 40 40, 20 40, 10 20, 30 10))'), ST_GEOGFROMTEXT('POLYGON((20 30, 35 35, 30 20, 20 30))') ) AS contains_polygon;

  1. 선이 점을 포함하는지 확인이 쿼리는 선이 점을 포함하는지 여부를 반환합니다. 결과는 FALSE입니다. (선은 점을 포함하지 않기 때문입니다.)
  2. SELECT ST_CONTAINS( ST_GEOGFROMTEXT('LINESTRING(10 10, 20 20, 30 30)'), ST_GEOGFROMTEXT('POINT(15 15)') ) AS contains_point;

주요 사항

  • GEOGRAPHY 객체: ST_CONTAINS 함수는 GEOGRAPHY 타입의 객체에 대해 작동합니다.
  • 포함 관계: 이 함수는 geography1geography2를 완전히 포함하고 있는지 여부를 확인합니다. 포함 관계는 geography2의 모든 점이 geography1의 내부에 있을 때 성립합니다.
  • 응용 분야: ST_CONTAINS는 지리적 데이터를 분석할 때 객체 간의 포함 관계를 확인하는 데 유용합니다. 예를 들어, 특정 지역 내에 위치한 점들을 찾거나, 특정 영역 내에 다른 영역이 완전히 포함되는지 확인하는 데 사용할 수 있습니다.

ST_CONTAINS 함수를 통해 GEOGRAPHY 객체 간의 포함 관계를 쉽게 확인할 수 있으며, 이를 통해 다양한 지리적 문제를 효율적으로 해결할 수 있습니다.

반응형

댓글