STSymDifference(geography 데이터 형식)
특정 geography 인스턴스 또는 다른 geography 인스턴스에 있지만 두 인스턴스 모두에 있지는 않은 모든 점을 나타내는 개체를 반환합니다.
구문
.STSymDifference ( other_geography )
인수
- other_geography
**STSymDistance()**를 호출할 인스턴스 외의 다른 geography 인스턴스입니다.
반환 형식
SQL Server 반환 형식: geography
CLR 반환 형식: SqlGeography
주의
이 메서드는 geography 인스턴스의 SRID(Spatial Reference Identifier)가 일치하지 않으면 항상 Null을 반환합니다.
SQL Server에서는 반구보다 큰 공간 인스턴스를 지원합니다. SQL Server에서는 서버에서 얻을 수 있는 결과 집합이 FullGlobe 인스턴스까지 확장되었습니다.
입력 인스턴스에 원호 세그먼트가 있을 경우에만 결과에 원호 세그먼트가 포함될 수 있습니다.
예
1.두 Polygon 사이의 대칭 차이 계산
다음 예에서는 STSymDifference()를 사용하여 두 Polygon 인스턴스의 대칭 차이를 계산합니다.
DECLARE @g geography;
DECLARE @h geography;
SET @g = geography::STGeomFromText('POLYGON((-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653))', 4326);
SET @h = geography::STGeomFromText('POLYGON((-122.351 47.656, -122.341 47.656, -122.341 47.661, -122.351 47.661, -122.351 47.656))', 4326);
SELECT @g.STSymDifference(@h).ToString();
2.FullGlobe와의 대칭 차이 계산
다음 예에서는 FullGlobe와 Polygon의 대칭 차이를 비교합니다.
DECLARE @g geography = 'POLYGON((-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653))';
SELECT @g.STSymDifference('FULLGLOBE').ToString();