Mongodb 如何在mongo db中查找不同的记录

Mongodb 如何在mongo db中查找不同的记录,mongodb,distinct,record,Mongodb,Distinct,Record,我在MongodB中插入以下记录 { "_class" : "mkcl.os.transformer.PayloadObject", "_id" : ObjectId("53763e6fe4b00e612650c18c"), "dataMap" : { "gpsLocation" : "Latitude: 18.6099243, Longitude:73.7710601,Altitude:0.0", "85" : "Prahlad Sing

我在MongodB中插入以下记录

{
    "_class" : "mkcl.os.transformer.PayloadObject",
    "_id" : ObjectId("53763e6fe4b00e612650c18c"),
    "dataMap" : {
        "gpsLocation" : "Latitude: 18.6099243, Longitude:73.7710601,Altitude:0.0",
        "85" : "Prahlad Singh",
        "86" : "25",
        "88" : "16/05/14",
        "92" : "",
        "89" : "Male",
        "91" : "Single",
        "87" : "Pune",
        "90" : "Employement"
    },
    "formId" : NumberLong(22),
    "imageUrls" : {},
    "isDeleted" : false
}
有很多这样的记录。现在,我需要基于键86、89和90的不同记录


我正在使用query db.payloadObject.distinct('dataMap.86'),它根据值key-86返回不同的记录。我不理解如何根据这些条件获取值

Useaggregate可以返回不同的复合键,如

db.payloadObject.aggregate([{
    $group : {
        _id : {
            86 : "$dataMap.86", 
            89 : "$dataMap.89", 
            90 : "$dataMap.90", 
        }
    }
}]); 

Useaggregate可以返回不同的复合键,如

db.payloadObject.aggregate([{
    $group : {
        _id : {
            86 : "$dataMap.86", 
            89 : "$dataMap.89", 
            90 : "$dataMap.90", 
        }
    }
}]); 

Useaggregate可以返回不同的复合键,如

db.payloadObject.aggregate([{
    $group : {
        _id : {
            86 : "$dataMap.86", 
            89 : "$dataMap.89", 
            90 : "$dataMap.90", 
        }
    }
}]); 

Useaggregate可以返回不同的复合键,如

db.payloadObject.aggregate([{
    $group : {
        _id : {
            86 : "$dataMap.86", 
            89 : "$dataMap.89", 
            90 : "$dataMap.90", 
        }
    }
}]);