sql >> Database teknologi >  >> NoSQL >> MongoDB

Hvordan filtreres og kortlægges array af dokumenter i MongoDB-forespørgsel?

Du kan ombryde $filter udtryk inde i $map for at kortlægge outputværdierne.

db.people.aggregate([
  {
    "$project": {
      "name": 1,
      "age": 1,
      "hobbies": {
        "$map": {
          "input": {
            "$filter": {
              "input": "$hobbies",
              "as": "hobbyf",
              "cond": "$$hobbyf.regular"
            }
          },
          "as": "hobbym",
          "in": {
            "name": "$$hobbym.name",
            "type": "$$hobbym.type"
          }
        }
      }
    }
  }
])



  1. Konfiguration af oauth2-server-laravel med laravel-mongodb

  2. Hvorfor vil mine refs ikke udfylde dokumenter?

  3. MongoDB Java Driver oprettelse af database og samling

  4. Kan jeg gøre to kolonner unikke for hinanden? eller bruge sammensatte primære nøgler i redis?