MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Policz właściwość poddokumentu w projekcji za pomocą MongoDB i Javascript

  • $map do iteracji pętli subRoom tablica i in aby zwrócić wymagane pola
  • $filter do iteracji pętli notifications i $size aby uzyskać całkowitą liczbę elementów z przefiltrowanego wyniku
db.collection.find({ id: 1 },
{
  _id: 0,
  room: 1,
  notRead: {
    $size: {
      $filter: {
        input: "$notifications",
        cond: {
          $not: { $in: ["User1", "$$this.read"] }
        }
      }
    }
  },
  "subRoom": {
    $map: {
      input: "$subRoom",
      in: {
        id: "$$this.id",
        notRead: {
          $size: {
            $filter: {
              input: "$$this.notifications",
              cond: { $not: { $in: ["User1", "$$this.read"] } }
            }
          }
        }
      }
    }
  }
})

Plac zabaw




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongodb nie ma uprawnień administratora do wykonywania polecenia listDatabases

  2. Niestandardowy komunikat o błędzie modelu Mongoose dla wyliczeń

  3. Zapytanie Mongodb Java o zakres dat

  4. Nie można uruchomić MongoDB. BŁĄD:adres jest już używany

  5. Dlaczego sterownik węzła mongoDB tworzy niechciane połączenia?