У меня есть три набора пространственных данных:
- Полигоны района
- Точки расположения полицейских участков
- Точка расположения преступлений
Я использую PostGIS.
Код, который у меня сейчас есть:
SELECT
nc.nbh_names,
count(ps),
count(ci)
FROM public."Neighborhood_Clusters" AS nc
LEFT JOIN public."Police_Stations" AS ps
ON ST_Contains(nc.geom, ps.geom)
JOIN public."Crime_Incidents_in_2020" AS ci
ON ST_Contains(nc.geom, ci.geom)
GROUP BY nc.nbh_names;
Вывод, который я получаю:
Мне бы хотелось, чтобы мой вывод был похож на следующее:
Столбец 1: Название района | Колонка 2: Количество полицейских участков | Колонка 3: Количество преступлений
В каждом районе должно быть не более одного или двух полицейских участков.
По какой-то причине, если в окрестности, он подсчитывает и возвращает количество преступлений вместо этого.
Может кто-нибудь помочь помочь исправить код, чтобы я получил желаемый результат?