data = { "_id" : ObjectId("5def3949e13823511e7ecc90"), "Name" : "默認網絡選項", "NetworkMTU" : 1500}
假如data 是數據庫中的一條數據
query = []
定義一個空數組
query.append({"$group": {"_id": "$Name", "ID": {"$first": "$_id"}, "MTU":{"$first": "$NetworkMTU"}}})
在$group中key值可以自己定義,但value值一定要是數據中的真實存在的key值。除了_id字段外,其他字段都要用$first等表達式來查詢到該字段,並且在字段前面加$符號
query.append({"$project": {"_id": "$ID", "Name": "$_id", "NetworkMTU":"$MTU"}})
利用$project來改變數據的原有結構,使被查詢數據變為我們想要的數據結構
然后用 db.data.aggregate(query) 來查詢即可