STRelate (geometry-Datentyp)
Gilt für: SQL Server
Azure SQL-Datenbank
Azure SQL Managed Instance
SQL-Datenbank in Microsoft Fabric
Gibt 1 zurück, wenn eine geometry -Instanz auf eine andere geometry -Instanz bezogen ist, wobei die Beziehung durch einen Mustermatrizenwert eines DE-9IM-Modells (Dimensionally Extended 9 Intersection Model) definiert wird. Andernfalls wird 0 zurückgegeben.
Syntax
.STRelate ( other_geometry, intersection_pattern_matrix )
Argumente
other_geometry
Eine andere geometry -Instanz zum Vergleich mit der Instanz, in der STRelate()
aufgerufen wird.
intersection_pattern_matrix
Eine Zeichenfolge vom Typ nchar(9) , die akzeptable Werte für das DE-9IM-Mustermatrizengerät zwischen den beiden geometry -Instanzen codiert.
Hinweise
Diese Methode gibt immer NULL zurück, wenn die SRIDs (Spatial Reference IDs) der geometry -Instanzen nicht übereinstimmen. Diese Methode löst ArgumentException aus, wenn die Matrix nicht korrekt formatiert ist.
Rückgabetypen
SQL Server-Rückgabetyp: bit
CLR-Rückgabetyp: SqlBoolean
Beispiele
Im folgenden Beispiel wird STRelate()
verwendet, um mithilfe eines expliziten DE-9IM-Musters zwei geometry -Instanzen auf räumliche Disjunktion zu testen.
DECLARE @g geometry;
DECLARE @h geometry;
SET @g = geometry::STGeomFromText('LINESTRING(0 2, 2 0, 4 2)', 0);
SET @h = geometry::STGeomFromText('POINT(5 5)', 0);
SELECT @g.STRelate(@h, 'FF*FF****');