Filter (tipo de datos Geography)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Método que proporciona una forma rápida de intersección solo para índices con la que se puede determinar si una instancia de geography forma intersección con otra instancia de geography, siempre y cuando haya un índice disponible.

Devuelve 1 si una instancia de geography puede cortar otra instancia de geography. Este método puede generar una respuesta falsa positiva y el resultado exacto puede depender del plan. Devuelve el valor 0 preciso (respuesta verdadera negativa) si no se encuentra ninguna intersección de las instancias de geography.

En los casos en los que no haya ningún índice disponible o que no se use, el método devolverá los mismos valores que STIntersects() cuando se llama con los mismos parámetros.

Sintaxis

  
.Filter ( other_geography )  

Nota:

Para ver la sintaxis de Transact-SQL para SQL Server 2014 (12.x) y versiones anteriores, consulte Versiones anteriores de la documentación.

Argumentos

other_geography
Es otra instancia de geography con la que se compara la instancia en la que se invoca Filter().

Tipos de valor devuelto

Tipo de valor devuelto de SQL Server: bit

Tipo de valor devuelto de CLR: SqlBoolean

Comentarios

Este método no es determinista y no es preciso.

Ejemplos

En el ejemplo siguiente se usa Filter() para determinar si dos instancias de geography forman intersección.

CREATE TABLE sample (id int primary key, g geography);  
INSERT INTO sample VALUES  
   (0, geography::Point(45, -120, 4326)),  
   (1, geography::Point(45, -120.1, 4326)),  
   (2, geography::Point(45, -120.2, 4326)),  
   (3, geography::Point(45, -120.3, 4326)),  
   (4, geography::Point(45, -120.4, 4326));  
  
CREATE SPATIAL INDEX sample_idx on sample(g);  
SELECT id  
FROM sample   
WHERE g.Filter(geography::Parse(  
   'POLYGON((-120.1 44.9, -119.9 44.9, -119.9 45.1, -120.1 45.1, -120.1 44.9))')) = 1;  

Consulte también

Métodos extendidos en instancias de geography
STIntersects (tipo de datos geography)