我有一個Mongoose模式,它是這樣的:
我有一個Mongoose模式。
const mySchema = new mongoose.Schema(
{
_id: String,
coin: String,
closeTime: Number,
volume: Number,
我有一堆不同的硬幣。是否有可能根據closeTime為我擁有的每個獨特的硬幣獲取最新的檔案?
如果能提供幫助,我們將不勝感激! 謝謝。
uj5u.com熱心網友回復:
你可以使用聚合來按最新/最新的closeTime排序,按coin分組,然后得到該組的第一個檔案:
mySchema.aggregate([
{ $sort: { closeTime: -1 }. },
{ $group: { _id: "$coin"/span>, latest: { $first: "$ROOT" } } }
])
這是用數字closeTime按降序進行排序,得到第一個/最新的檔案,并將其資料放入一個名為latest的屬性中。這應該會產生這樣的結果:
[{
"_id"/span> : "2"/span>,
"最新" : {
"_id" : ObjectId("6149f106742bb30e2529c453")。
"coin"/span> : "foo"/span>,
"closeTime" : 5,
"volume" : 1.
}
}
{
"_id"/span> : "1"/span>,
"最新" : {
"_id" : ObjectId("6149f111742bb30e2529c45f")。
"coin"/span> : "bar"/span>,
"closeTime" : 4,
"volume" : 1.
}
}]
你可以通過其他聚合階段來進一步提取/投射基礎硬幣檔案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/332480.html
標籤:
下一篇:開源實時日志分析平臺-ELK
