我有一個postgis數據庫(postgis 8.4.11,postgis 1.5.2)和gps-observations我想計算一些旅行距離。在postgis中沿點查找路徑長度
我從gpspoint P1,P2 gpspoint計算到另一個小時後用 選擇observedid,ST_Distance(p1.shape_utm,p2.shape_utm)從一個點行進距離,其中p2.datetime = p1.datetime +間隔「1小時」
(當然多一點,但這是距離部分在它)我已經定義這是一個視圖,這樣我可以很容易地做一 SELECT * FROM movement_view其中observedid = 42
問題1: 是否可以製作視圖以便我可以定義時間間隔?
例如select * form movement_view where observedid = 42 and interval = '15 minutes'?
問題2: SQL/postgis中可能計算一段時間內的總行程距離嗎?我每5秒鐘都有一個gps點,並且想要計算例如每個gps點後1小時。我可以使用與上面相同的方法計算每個點的行進距離,然後我可以使用sum()函數,但是如何?
表定義: ID整數,
gpsstatus字符(2),
日期時間時間戳沒有時區,
LAT數字(9,6),
LON數字(9,6),
中高音數字(9,4),
時間整數,
datafileid整數,
形狀的幾何形狀,
速度雙精度,
DIST雙PREC ision,
shape_utm幾何形狀,
lokalitet字符(128),
cowid整數
編號:主鍵上有形狀和shape_utm有關日期時間,lokalitet,cowid,gpsstatus,要旨索引的索引。
對不起,稍微wron標題,一個更好的將是「找到路徑沿點postgis路徑的長度」 – MortenSickel
銖,試圖刪除評論後,我發現我可以編輯標題,但爲時已晚...... – MortenSickel
答案是肯定的兩個,它創建一個具有關鍵點的子查詢相對容易,每個點集合在兩點之間的距離,然後求和這些結果。我添加了一個postgresql標籤,因爲你的答案是更多的SQL,然後它是地理位置...更多的意見這種方式。如果你提供表格模式信息,你可能會得到一個工作答案。 – Twelfth