STRelate (tipo de dados geometry)
Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Banco de Dados SQL no Microsoft Fabric
Retornará 1 se uma instância de geometry tiver relação com outra instância de geometry, e a relação for definida por um valor de matriz do padrão DE-9IM (Dimensionally Extended 9 Intersection Model), caso contrário, retornará 0.
Sintaxe
.STRelate ( other_geometry, intersection_pattern_matrix )
Argumentos
other_geometry
É outra instância de geometry a ser comparada com a instância na qual STRelate()
é invocado.
intersection_pattern_matrix
É uma cadeia de caracteres do tipo nchar(9) que codifica os valores aceitáveis do dispositivo da matriz do padrão DE-9IM entre as duas instâncias de geometria.
Comentários
Esse método sempre retornará nulo se as SRIDs (IDs de referência espacial) das instâncias de geometry não forem correspondentes. Esse método vai gerar uma ArgumentException se a matriz não estiver bem formada.
Tipos de retorno
Tipo de retorno do SQL Server: bit
Tipo de retorno do CLR: SqlBoolean
Exemplos
O exemplo a seguir usa STRelate()
para testar duas instâncias de geometria quanto à separação espacial usando um padrão DE-9IM explícito.
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****');