STRelate(geometry 数据类型)

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Microsoft Fabric 中的 SQL 分析终结点Microsoft Fabric 中的仓库

如果一个 geometry 实例与另一个 geometry 实例相关(其关系由“维扩展 9 交集模型”(DE-9IM) 模式矩阵值定义),则返回 1;否则,返回 0。

语法

  
.STRelate ( other_geometry, intersection_pattern_matrix )  

注意

若要查看 SQL Server 2014 (12.x) 及更早版本的 Transact-SQL 语法,请参阅早期版本文档

参数

other_geometry
将与调用 STRelate() 的实例进行比较的另一个 geometry 实例

intersection_pattern_matrix
两个 geometry 实例间的 DE-9IM 模式矩阵设备的 nchar(9) 类型编码可接受值字符串。

注解

如果 geometry 实例的空间引用 ID (SRID) 不匹配,则此方法始终返回 null。 如果矩阵格式不正确,此方法将引发 ArgumentException。

返回类型

SQL Server 返回类型:bit

CLR 返回类型:SqlBoolean

示例

以下示例在显式 DE-9IM 模式下使用 STRelate() 来测试两个 geometry 实例是否在空间上不相联。

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****');  

另请参阅

几何图形实例上的 OGC 方法