У меня есть одна таблица, которая имеет много места, отображенного с помощью гео многоугольникиграф все точки в гео многоугольник (SQL Server 2014)
А потом у меня есть еще один стол со свойствами, имеет место, что является «география "свойство
Если я использую этот код я получаю число свойств в определенном месте:
SELECT COUNT(id) FROM Property
WHERE [Status] = 1
AND Location.Filter(Geography::Parse('POLYGON ((8.476 40.2591,8.4618 40.241,8.4787 40.2403,8.4851 40.2539,8.476 40.2591))')) = 1
Но проблема в том, что я, что знаю, как много свойств, которые расположены в любом месте (многоугольники используется в моем запросе из таблицы местоположений)
Единственная связь между таблицами являются точки размещения
Я действительно нуждается в помощи здесь
EDIT:
Благодаря Бену я, наконец, получил его на работу, вот код, который работает для меня :)
SELECT location.Id, (SELECT COUNT(property.Id) FROM Property AS property WHERE property.Location.Filter(Geography::Parse('POLYGON ((' + location.GeoPolygon + '))')) = 1) AS PropertyCount
FROM Location AS location
Это звучит как хороший вариант использования для [STContains] (https://msdn.microsoft.com/en- us/library/bb933904% 28v = sql.120% 29.aspx) – C8H10N4O2
Спасибо друг другу. Не могли бы вы объяснить, как реализовать STContains в моей проблеме? Я никогда не использовал эту функцию, и я не понимаю, как я должен подключать две таблицы. –