2016-12-18 31 views
0

我想從數組中刪除重複的值,我可以用下面的查詢成功實現,但有困難跳過鍵值爲null的鍵。我使用下面的代碼MongoDB聚合跳過空值鍵

db.mobile_data.aggregate([{$unwind: '$All_Participants'}, 
{$group: {_id:'$_id',All_Participants: {$addToSet: '$All_Participants'}, 
    Chat_group: {$first: '$Chat_group'}, Message_id: {$first: '$Message_id'} }}]); 

我的輸出結果如下

{ 
    "_id" : ObjectId("5856b1e39a47e6d13dab370b"), 
    "All_Participants" : [ 
     "user1", 
     "user4" 
    ], 
    "Chat_group" : 67.0, 
    "Message_id" : Null 
} 

怎能無視Message_id如果值爲null?預計輸出應該

{ 
    "_id" : ObjectId("5856b1e39a47e6d13dab370b"), 
    "All_Participants" : [ 
     "user1", 
     "user4" 
    ], 
    "Chat_group" : 67.0 
} 
+1

我認爲這可以幫助:http://stackoverflow.com/questions/33123396/group-in-mongo-excluding-null-values – Jackowski

+0

我曾嘗試以下鏈接命令,但沒有爲我工作 – Sumon

回答