적용 대상:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Microsoft Fabric의 SQL 데이터베이스
지정된 허용 오차를 사용하여 인스턴스에서 Douglas-Peucker 알고리즘을 실행하여 생성된 지정된 지리 인스턴스의 근사치를 반환합니다.
이 geography 데이터 형식 메서드는 FullGlobe 인스턴스 또는 반구보다 큰 공간 인스턴스를 지원합니다.
Syntax
.Reduce ( tolerance )
Arguments
| Term | Definition |
|---|---|
| tolerance | float 형식의 값입니다. 허용 오차는 Douglas-Peucker 알고리즘에 대한 입력 허용 오차 입니다. tolerance는 양수여야 합니다. |
반환 형식
SQL Server 반환 형식: geography
CLR 반환 형식: SqlGeography
Remarks
컬렉션 형식의 경우 이 알고리즘은 인스턴스에 포함된 각 지역에서 독립적으로 작동합니다. 이 알고리즘은 지점 인스턴스를 수정하지 않습니다.
이 메서드는 LineString 인스턴스의 엔드포인트를 유지하려고 시도하지만 유효한 결과를 유지하기 위해 이 작업을 수행하지 못할 수 있습니다.
음수 값을 사용하여 호출되는 경우 Reduce() 이 메서드는 ArgumentException을 생성합니다. 사용된 Reduce() 허용 오차는 양수여야 합니다.
Douglas-Peucker 알고리즘은 시작점과 끝점을 제외한 모든 점을 제거하여 지리 인스턴스의 각 곡선 또는 링에서 작동합니다. 그런 다음 제거된 각 지점은 결과에서 허용 오차를 초과할 때까지 가장 먼 외부 지점부터 시작하여 다시 추가됩니다. 그런 다음, 유효한 결과가 보장되므로 필요한 경우 결과가 유효합니다.
SQL Server 2012(11.x)에서 이 메서드는 FullGlobe 인스턴스로 확장되었습니다.
이 메서드는 정확하지 않습니다.
Examples
다음 예제에서는 인스턴스를 LineString 만들고 인스턴스를 간소화하는 데 사용합니다 Reduce() .
DECLARE @g geography = 'LineString(120 45, 120.1 45.1, 199.9 45.2, 120 46)'
SELECT @g.Reduce(10000).ToString()