0
我有兩個數據集:1. ZipCodes和2.鄰居(將它們想象成類似的縣)。如何檢測postgis中其他(多個)多邊形中的多邊形
我想加入每個附有郵編的街區。大多數社區只能在一個郵政編碼內,但在某些情況下,社區將跨過兩個郵政編碼。因此,例如:
鄰居1是內部20001
鄰居2是內部20002
鄰居3裏面20001,20002
這是我到目前爲止有:
SELECT name, zipcode
FROM
neighborhood_names nn, dc_zipcode_boundries dzb
WHERE ST_Intersects(nn.the_geom, dzb.the_geom);
注:更新爲根據評論內容,現在得到每個鄰域的答案,但仍然無法讓Array函數按預期做出響應。
你是不是缺少什麼正因爲如此,雖然你可能想要使用ST_Intersects,這也將拿起跨越邊界的郵政編碼。如果你想爲每個鄰域輸出一行,那麼你可以使用array_agg函數,以及GROUP by名字,它將爲你的第三行例子返回類似3,[20001,20002]的東西,而不是兩行。 –
所以我嘗試這樣:
選擇nn.the_geom_webmercator,名稱,string_Agg(郵編, ''),爲從zipcodeArr
neighborhood_names NN,dc_zipcode_boundries DZB 其中ST_Intersects(nn.the_geom,dzb.the_geom)
並且一般會得到錯誤:列「nn.the_geom_webmercator」必須出現在GROUP BY子句中或用於聚合函數中 我做錯了什麼? – Matt617