hot to get subdocument values as normal document field's value in mongodb

75 views Asked by At
{
        "eID" : 101,
        "eName" : "Radhey",
        "phone" : 85482245,
        "add" : "ffw djf ffvf",
        "city" : "U.P",
        "Salary Details" : [
                {
                        "Salary" : 56458
                }
        ]
}

as

{
        "eID" : 101,
        "eName" : "Radhey",
        "phone" : 85482245,
        "add" : "ffw djf ffvf",
        "city" : "U.P",
        "Salary" : 56458
} 
1

There are 1 answers

0
nimrod serok On

If Salary Details is always an array with a single object in it, as @user20042973 suggested, you can use:

db.collection.find({},
{
  "eID": 1,
  "eName": 1,
  "phone": 1,
  "add": 1,
  "city": 1,
  "Salary Details": {$first: "$Salary Details.Salary"}
})