0
使用金額
我學習蒙戈和我有下面這個模式,我想一些幫助定義查詢:在蒙戈
我想獲得匹配這個代碼的「entregado」字段的總和: 151001.在這種情況下,我會得到這個結果= 38.
我是否需要更改模式或很容易得到我想要的查詢?
{
"_id": 101,
"torre": 1,
"standard": {
"mamposteria": [
{
"codigo": 311017,
"descripcion": "LADRILLO ARCILLA H-10",
"cantidad": 1080,
"um": "UN",
"entregado": 1080,
"fecha": new Date('June 10, 2013'),
"vale": [1322]
},
{
"codigo": 311021,
"descripcion": "LADRILLO ARCILLA H-7",
"cantidad": 200,
"um": "UN",
"entregado": 200,
"fecha": new Date('June 10, 2013'),
"vale": [1322]
},
{
"codigo": 151001,
"descripcion": "CEMENTO GRIS 50 KG",
"cantidad": 17,
"um": "KG",
"entregado": 17,
"fecha": new Date('June 10, 2013'),
"vale": [1322]
}
],
"mortero": [
// . . .
],
"estructura":[
// . . .
]
}
}
這可以使用聚合框架來完成。你有很多子文檔 - 不管你提供的信息是否改變你的模式都不是一個容易回答的問題。這都是特定應用程序/使用情況。如果您要求的聚合查詢是您的應用將發送到數據庫的主要查詢,那麼我很可能會嘗試更改它。請閱讀關於聚合的更多信息,並嘗試自行完成一些操作:http://docs.mongodb.org/manual/aggregation/。數據建模也是一個很好的解讀:http://docs.mongodb.org/manual/core/data-modeling-introduction/ –