STIntersection (tipo di dati geometry)
Si applica a: SQL Server database SQL di Azure Istanza gestita di SQL di Azure database SQL in Microsoft Fabric
Restituisce un oggetto che rappresenta i punti in cui un'istanza geometry interseca un'altra istanza geometry.
Sintassi
.STIntersection ( other_geometry )
Argomenti
other_geometry
Altra istanza geometry da confrontare con l'istanza sulla quale viene chiamato STIntersection()
per determinare il punto di intersezione.
Tipi restituiti
Tipo SQL Server restituito: geometry
Tipo CLR restituito: SqlGeometry
Osservazioni:
STIntersection()
restituisce sempre Null se gli identificatori SRID delle istanze geometry non corrispondono. Il risultato può contenere segmenti di arco circolare solo se le istanze di input ne contengono.
Esempi
R. Utilizzo di STIntersection() in istanze Polygon
Nell'esempio seguente viene utilizzato STIntersection()
per calcolare l'intersezione di due poligoni.
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.STIntersection(@h).ToString();
B. Utilizzo di STIntersection() con istanze CurvePolygon
Nell'esempio seguente viene restituita un'istanza che contiene un segmento di arco circolare.
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.STIntersection(@g).ToString();