MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Вмъкване на данни във вложен масив в mongodb

Не можете да използвате няколко позиционни $, за вашия случай можете да използвате единични позиционни и arrayFilters,

Филтрираният позиционен оператор $[<identifier>] идентифицира елементите на масива, които отговарят на условията на arrayFilters за операция за актуализиране,

db.collection(TABLE).updateOne({
  list_id: 23,
  "cards.categories.category": "section01"
},
{
  $push: {
    "cards.$.categories.$[elem].tags": {
      name: "tag02",
      id: uuidv4(),
      is_selected: true
    }
  }
},
{
  arrayFilters: [
    { "elem.category": "section01" }
  ]
})

Детска площадка



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongoose.js създава множество връзки към MongoDB от едно извикване на connect().

  2. Пагинация на монго с пролетни данни

  3. MongoDB $dateToString

  4. Накарайте $elemMatch (проекция) да върне всички обекти, които отговарят на критериите

  5. MongoDB Aggregation:Преброяване на отделни полета