STSymDifference(geometry 데이터 형식)

적용 대상: Microsoft Fabric의 Microsoft FabricWarehouse에 있는 SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL 분석 엔드포인트

기하 도형 인스턴스 또는 다른 기하 도형 인스턴스에 있는 모든 점을 나타내지만 두 인스턴스에 있는 점이 아닌 모든 점을 나타내는 개체를 반환합니다.

Syntax

  
.STSymDifference ( other_geometry )  

참고 항목

SQL Server 2014(12.x) 및 이전 버전에 대한 Transact-SQL 구문을 보려면 이전 버전 설명서를 참조 하세요.

인수

other_geometry
STSymDifference()를 호출할 인스턴스 외의 다른 geometry 인스턴스입니다.

반환 형식

SQL Server 반환 형식: geometry

CLR 반환 형식: SqlGeometry

설명

이 메서드는 geometry 인스턴스의 SRID(spatial Reference ID)가 일치하지 않으면 항상 Null을 반환합니다. 입력 인스턴스에 원호 세그먼트가 포함된 경우에만 결과에 원호 세그먼트가 포함될 수 있습니다.

예제

A. 두 Polygon 인스턴스 간의 대칭 차이 계산

다음 예제에서는 두 Polygon 인스턴스의 대칭 차이를 계산하는 데 사용합니다STSymDifference().

DECLARE @g geometry;  
DECLARE @h geometry;  
SET @g = geometry::STGeomFromText('POLYGON((0 0, 0 2, 2 2, 2 0, 0 0))', 0);  
SET @h = geometry::STGeomFromText('POLYGON((1 1, 3 1, 3 3, 1 3, 1 1))', 0);  
SELECT @g.STSymDifference(@h).ToString();  

B. CurvePolygon 및 Polygon 인스턴스 간의 대칭 차이 계산

다음 예제에서는 a와 a GeometryCollection 사이의 대칭 차이를 나타내는 값을 CurvePolygon 반환합니다 Polygon.

 DECLARE @g geometry = 'CURVEPOLYGON (CIRCULARSTRING (0 -4, 4 0, 0 4, -4 0, 0 -4))';  
 DECLARE @h geometry = 'POLYGON ((1 -1, 5 -1, 5 3, 1 3, 1 -1))';  
 SELECT @h.STSymDifference(@g).ToString();

C. 포함된 Polygon 인스턴스가 있는 CurvePolygon 인스턴스에서 STSymDifference() 사용

다음 예제에서는 비교된 두 인스턴스 간의 대칭 차이를 나타내는 내부 Polygon 링이 있는 인스턴스를 반환 CurvePolygon 합니다.

 DECLARE @g geometry = 'CURVEPOLYGON (CIRCULARSTRING (0 -4, 4 0, 0 4, -4 0, 0 -4))';  
 DECLARE @h geometry = 'POLYGON ((1 -1, 2 -1, 2 1, 1 1, 1 -1))';  
 SELECT @h.STSymDifference(@g).ToString();

참고 항목

geometry 인스턴스의 OGC 메서드