Bagikan melalui


STDifference (Jenis Data geometri)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceDatabase SQL di Microsoft Fabric

Mengembalikan objek yang mewakili kumpulan titik dari satu instans geometri yang tidak berada dalam instans geometri lain.

Syntax

  
.STDifference ( other_geometry )  

Arguments

other_geometry
Adalah instans geometri lain yang menunjukkan titik mana yang akan dihapus dari instans yang STDifference() sedang dipanggil.

Jenis Kembalian

Jenis pengembalian SQL Server: geometri

Jenis pengembalian CLR: SqlGeometry

Remarks

Metode ini selalu mengembalikan null jika ID referensi spasial (SRID) instans geometri tidak cocok. Hasilnya mungkin berisi segmen busur melingkar hanya jika instans input berisi segmen busur melingkar.

Examples

A. Menghitung perbedaan antara dua instans Polygon

Contoh berikut menggunakan STDifference() untuk menghitung perbedaan antara dua poligon.

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.STDifference(@h).ToString();  

B. Memanggil STDifference() pada instans CurvePolygon

Contoh berikut menggunakan STDifference() pada instans CurvePolygon.

 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))';  
 -- Note the different results returned by the two SELECT statements  
 SELECT @h.STDifference(@g).ToString(), @g.STDifference(@h).ToString();

Lihat Juga

Metode OGC pada Instans Geometri