簡體   English   中英

另一個將數據添加到PostGIS表中的多個記錄中

[英]Another add data to multiple records in PostGIS table

尼克拉斯,感謝您回答我上一個問題。

原諒我的無知和詢問可能會變成相當簡單的問題,但是數據庫不是我的專業領域。

select語句為我提供每個區域的崩潰次數:SELECT P.precinct,從nycpp P,nyccrash C的count(C),其中_st_contains(P.the_geom,C.crashpoint)GROUP BY P.precinct ;

我只想將計數添加到我的nycpp表中,將保存計數的變量是崩潰的數量...。

再次感謝您的協助

克里斯

哈羅

我以為precinct是nycpp中的唯一ID,那么您可以嘗試:

update nycpp set number_of crashes=a.n_crashes from 
(SELECT P.precinct, count(C) as n_crashes FROM nycpp P, nyccrash C 
WHERE _st_contains(P.the_geom, C.crashpoint) 
GROUP BY P.precinct 
ORDER BY P.precinct) a
where nycpp.precinct=a.precinct;

但是為什么要使用_st_contains而不是st_contains

下划線版本將不使用您的空間索引,但是在運行下划線版本之前,st_contains會進行第一次索引掃描以找到相交的綁定框。

因此,您可能絕對希望使用st_contains而不是contains。 如果您的表足夠大,需要索引:在此查詢中,空間索引在兩個表上都非常重要,而在區域上則很重要。 創建索引以使其工作后,請不要忘記分析表。

順便說一句,如果您對答案感到滿意,我認為您應該將這些問題標記為已回答,這樣其他人就不必嘗試回答它們。

HTH尼克拉斯

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM