Ich habe ein einfaches Problem: Ich möchte die Anzahl der Punkte innerhalb eines Satzes von Polygonen zählen.
Ich habe bereits eine SQL, aber sie gibt nur die GID des Polygons zurück, das tatsächlich Punkte enthält.
Meine Tabellen: eine Polygonebene mit 19.000 Zeilen und eine Punktebene mit 450 Zeilen.
Die folgende SQL
select grid.gid, count(*) AS totale FROM grid, kioskdhd3 WHERE
st_contains(grid.geom,kioskdhd3.geom) GROUP BY grid.gid;
Es werden nur 320 Polygone zurückgegeben, die tatsächlich Punkte enthalten. Aber ich möchte, dass alle Polygone zurückgegeben werden, auch wenn die Anzahl der Punkte 0 ist.
Das hat natürlich mit meiner WHERE-Klausel zu tun. Wo muss ich meine st_contains ablegen?
Vielen Dank Carsten
postgis
point-in-polygon
hoge6b01
quelle
quelle
Antworten:
quelle
Nach diesem Link werden Joins in GiST-Indizes nicht unterstützt.
Darf ich empfehlen:
quelle