STRelate (geometry-Datentyp)
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 verschlüsselt.
Hinweise
Diese Methode gibt immer NULL zurück, wenn die SRIDs (Spatial Reference IDs) der geometry-Instanzen nicht übereinstimmen. Diese Methode löst eine ArgumentException aus, wenn die Matrix nicht wohlgeformt 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****');