Filter(geography 데이터 형식)
인덱스를 사용할 수 있는 경우 geography 인스턴스가 다른 geography 인스턴스와 교차하는지 확인하는 빠른 인덱스 전용 교차 방법을 제공하는 메서드입니다.
geography 인스턴스가 다른 geography 인스턴스와 교차될 가능성이 있으면 1을 반환합니다. 이 메서드는 거짓 긍정 결과를 반환할 수 있으며 정확한 결과는 계획에 따라 다릅니다. geography 인스턴스가 교차되지 않으면 정확한 0 값(참 부정 결과)을 반환합니다.
인덱스를 사용할 수 없거나 사용하지 않는 경우 동일한 매개 변수를 사용하여 호출하면 이 메서드는 STIntersects()와 동일한 값을 반환합니다.
구문
.Filter ( other_geography )
인수
용어 |
정의 |
other_geography |
Filter()를 호출할 인스턴스와 비교할 다른 geography 인스턴스입니다. |
반환 형식
SQL Server 반환 형식: bit
CLR 반환 형식: SqlBoolean
주의
이 메서드는 비결정적이고 정확하지 않습니다.
예
다음 예에서는 Filter()를 사용하여 두 geography 인스턴스가 서로 교차하는지 확인합니다.
코드
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;
참고 항목
참조
STIntersects(geography 데이터 형식)