STSymDifference(geography 데이터 형식)
적용 대상: Microsoft Fabric의 SQL ServerAzure SQL Database Azure SQL Managed Instance SQL 데이터베이스
특정 geography 인스턴스 또는 다른 geography 인스턴스에 있지만 두 인스턴스 모두에 있지는 않은 모든 점을 나타내는 개체를 반환합니다.
구문
.STSymDifference ( other_geography )
인수
other_geography
STSymDistance()가 호출되는 인스턴스 외의 다른 geography 인스턴스입니다.
반환 형식
SQL Server 반환 형식: geography
CLR 반환 형식: SqlGeography
설명
지리 인스턴스의 SRID(공간 참조 식별자)가 일치하지 않는 경우 이 메서드는 항상 null을 반환합니다.
SQL Server는 반구보다 큰 공간 인스턴스를 지원합니다. SQL Server에서 서버에서 가능한 결과 집합이 FullGlobe 인스턴스로 확장되었습니다.
입력 인스턴스에 원호 세그먼트가 포함된 경우에만 결과에 원호 세그먼트가 포함될 수 있습니다.
예제
A. 두 다각형의 대칭 차이 계산
다음 예제에서는 두 Polygon
인스턴스의 대칭 차이를 계산하는 데 사용합니다STSymDifference()
.
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();
B. FullGlobe와의 대칭 차이 계산
다음 예에서는 Polygon
와 FullGlobe
의 대칭 차이를 비교합니다.
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();