Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-database in Microsoft Fabric
Retourneert een object dat de puntenset vertegenwoordigt van het ene geometrie-exemplaar dat niet binnen een ander geometrieexemplaren ligt.
Syntax
.STDifference ( other_geometry )
Arguments
other_geometry
Is een andere geometrieinstantie die aangeeft welke punten moeten worden verwijderd uit het exemplaar waarop STDifference() wordt aangeroepen.
Retourtypen
Retourtype SQL Server: geometrie
CLR-retourtype: SqlGeometry
Remarks
Deze methode retourneert altijd null als de ruimtelijke referentie-id's (SRID's) van de geometrie-exemplaren niet overeenkomen. Het resultaat mag alleen cirkelvormige boogsegmenten bevatten als de invoerexemplaren cirkelvormige boogsegmenten bevatten.
Examples
A. Het verschil tussen twee polygoonexemplaren berekenen
In het volgende voorbeeld wordt het STDifference() verschil tussen twee veelhoeken berekend.
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. STDifference() aanroepen op een CurvePolygon-exemplaar
In het volgende voorbeeld wordt STDifference() gebruikt voor een CurvePolygon-exemplaar.
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();