我有一個mongodb集合,如下所示: {color:'blue',category:'A', .....} {color:'yellow',category:'A',....} {color:'blue',category:'B',......} ... ....
db.collection.aggregate([{$ match:{color:'blue'}},{$ group:{_ id:「$ category」,num:{$總和:1}}}])
返回每個類別的顏色爲'blue'的文檔數量。
現在,我還想獲得每個類別中的文檔總數 - 在相同的聚合查詢中。這樣可以避免在非常大的數據庫上對mongodb服務器進行額外的查詢。因爲它是第一個查詢需要幾分鐘才能完成。添加另一個查詢將幾乎複製數據庫服務器的工作(再次分組和計數),因此需要更長的時間。 這可能嗎?
如果不是,是否有單個API調用來合併指定鍵字段上的兩個AggregationOutput結果?
謝謝。
爲什麼爲你做(不'$ match')不只是組類別? – WiredPrairie