我試圖建立一個蒙戈數據庫中的時間序列從幾個SO帖子的最後一個事件,並根據建議,正在與一個文件去爲每一個事件,如:的MongoDB:選擇從時間序列
{
_id: ObjectId("51a67033868eda7666b0a49c"),
station_id: 12,
timestamp: ISODate("2013-05-29T21:16:35.929Z"),
value: 50
}
獲取特定工作站的歷史很簡單(db.mydata.find({station_id: 12}, {timestamp: 1})
)。
更大的挑戰是獲得我所有站點的最新價值。 (需要注意的是最新的時間戳將是每個站不同,所以我不能做一個天真的查詢)在SQL中,我會做:
SELECT station_id, timestamp, value
FROM mydata
WHERE (station_id, timestamp) IN (
SELECT station_id, MAX(timestamp)
FROM mydata
GROUP BY station_id
)
你會怎麼做MongoDB中類似的東西?聚合框架非常強大,但我無法弄清楚使用它進行這種分析的方式。
非常感謝您的幫助。
謝謝!那很完美 – Maan