반응형
ST_TOUCHES
는 Google BigQuery에서 사용되는 함수로, 두 GEOGRAPHY 객체가 서로 접촉하는지 여부를 판단합니다. 이 함수는 두 객체가 공통 경계를 공유하지만, 내부적으로 겹치지 않는 경우 TRUE
를 반환합니다. 이는 지리적 객체 간의 접촉 여부를 평가하는 데 유용합니다.
사용법
ST_TOUCHES(geography1, geography2)
geography1
: 첫 번째 GEOGRAPHY 객체입니다.geography2
: 두 번째 GEOGRAPHY 객체입니다.
반환값
ST_TOUCHES
함수는 두 GEOGRAPHY 객체가 공통 경계를 공유하지만 내부적으로 겹치지 않으면TRUE
, 그렇지 않으면FALSE
를 반환합니다.
예시
- 두 다각형이 서로 접촉하는지 확인이 쿼리는 두 다각형이 서로 접촉하는지 여부를 반환합니다. 결과는
TRUE
입니다. SELECT ST_TOUCHES( ST_GEOGFROMTEXT('POLYGON((0 0, 2 0, 2 2, 0 2, 0 0))'), ST_GEOGFROMTEXT('POLYGON((2 0, 4 0, 4 2, 2 2, 2 0))') ) AS touches_polygons;
- 다각형과 선이 서로 접촉하는지 확인이 쿼리는 다각형과 선이 서로 접촉하는지 여부를 반환합니다. 결과는
TRUE
입니다. SELECT ST_TOUCHES( ST_GEOGFROMTEXT('POLYGON((0 0, 2 0, 2 2, 0 2, 0 0))'), ST_GEOGFROMTEXT('LINESTRING(2 0, 2 2)') ) AS touches_polygon_line;
- 두 점이 서로 접촉하는지 확인이 쿼리는 두 점이 서로 접촉하는지 여부를 반환합니다. 결과는
FALSE
입니다. (점은 경계를 가지지 않기 때문입니다.) SELECT ST_TOUCHES( ST_GEOGFROMTEXT('POINT(1 1)'), ST_GEOGFROMTEXT('POINT(2 2)') ) AS touches_points;
- 겹치는 다각형이 서로 접촉하는지 확인이 쿼리는 두 다각형이 서로 접촉하는지 여부를 반환합니다. 결과는
FALSE
입니다. (두 다각형이 내부적으로 겹치기 때문입니다.)
SELECT ST_TOUCHES( ST_GEOGFROMTEXT('POLYGON((0 0, 2 0, 2 2, 0 2, 0 0))'), ST_GEOGFROMTEXT('POLYGON((1 1, 3 1, 3 3, 1 3, 1 1))') ) AS touches_overlapping_polygons;
주요 사항
- GEOGRAPHY 객체:
ST_TOUCHES
함수는 GEOGRAPHY 타입의 객체에 대해 작동합니다. - 접촉 여부 판단: 이 함수는 두 객체가 공통 경계를 공유하지만 내부적으로 겹치지 않는지 여부를 확인합니다. 경계를 가지지 않는 점(Point)끼리는 접촉 여부를 판단할 수 없습니다.
- 응용 분야:
ST_TOUCHES
는 지리적 데이터 분석에서 객체 간의 접촉 여부를 확인하는 데 유용합니다. 예를 들어, 인접한 지리적 경계를 분석하거나, 특정 영역과 다른 객체 간의 접촉 여부를 평가하는 데 사용할 수 있습니다.
ST_TOUCHES
함수를 통해 GEOGRAPHY 객체 간의 접촉 여부를 쉽게 확인할 수 있으며, 이를 통해 다양한 지리적 문제를 효율적으로 해결할 수 있습니다.
반응형
'🖥️ IT, 컴퓨터 > 🏁 SQL・빅쿼리' 카테고리의 다른 글
[GIS] ST_ANGLE 함수 :: 두 객체 간 각도 계산 (0) | 2024.07.04 |
---|---|
[GIS] ST_WITHIN 함수 :: 완전포함 여부 (0) | 2024.07.04 |
[GIS] ST_EQUALS :: 두 객체가 동일한지의 여부 (0) | 2024.07.04 |
[GIS] ST 함수 뜻 :: Spatial Type (0) | 2024.07.04 |
[GIS] ST_DWITHIN 함수 :: 두 객체가 특정 거리 이내인지 여부 (0) | 2024.07.04 |
댓글