1. group by n_id and s1 and show the count :
db.click_20170503.aggregate([{$match:{n_id:25}},{$group : {_id : {"n_id":"$n_id","s1":"$s1", total : {$sum : 1}}}}])
2.? show n_id and all its s1 values
db.click_20170503.aggregate([{$group : {_id : "$n_id","s1":{$addToSet : "$s1"}}}])
3. 更直觀(guān)的 #2 :
db.click_20170503.aggregate([{$group : {_id : {"n_id":"$n_id"},"s1":{$addToSet : "$s1"}}}])
4.? $push需要謹(jǐn)慎使用,因?yàn)榧词故侵貜?fù)的值,也會(huì)被push進(jìn)去.最好使用addToSet
所以使用類(lèi)似于上面的語(yǔ)句時(shí)發(fā)現(xiàn)服務(wù)器顯示了很多內(nèi)容——因?yàn)橛泻芏鄺l記錄,每一條記錄的s1都被push進(jìn)去了。
db.click_20170503.aggregate([{$group : {_id : {"n_id":"$n_id"},"s1":{$push : "$s1"}}}])