Поделиться через


Географические методы, поддерживаемые пространственными индексами

При определенных условиях пространственные индексы поддерживают следующие географические методы для работы с наборами: STIntersects(),STEquals() и STDistance(). Чтобы пространственный индекс поддерживал эти методы, их необходимо использовать в предложении WHERE запроса, включив в состав предиката следующего общего вида:

geography1.method_name(geography2) comparison_operatorvalid_number

Чтобы получить ненулевой результат, аргументы geography1 и geography2 должны иметь одинаковый идентификатор пространственной ссылки (SRID). В противном случае метод возвращает значение NULL.

Пространственные индексы поддерживают предикаты следующих форм:

  • geography1.STIntersects(geography2) = 1

  • geography1.STEquals(geography2) = 1

  • geography1.STDistance(geography2) < number

  • geography1.STDistance(geography2) <= number

    Важное примечаниеВажно!

    В любой форме предиката STDistance() по крайней мере один из географических аргументов (geography1 или geography2) должен определять географический экземпляр point. В противном случае метод возвращает значение NULL.