MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Làm cách nào để cập nhật nhiều mảng trong MondoDB?

Đó là vì bạn đang sử dụng toán tử $:Toán tử $ vị trí xác định một phần tử (không phải đa) trong một mảng để cập nhật mà không chỉ định rõ ràng vị trí của phần tử trong mảng. Để chiếu hoặc trả về một phần tử mảng từ thao tác đọc, hãy xem toán tử $ chiếu.

Bạn có thể sử dụng mã dưới đây để làm điều đó:

db.playground.find({
  $and: [
    {
      "TargetSegments.Colors": {
        $exists: true
      }
    },
    {
       "ProjectFileId": 1
    },
    {
      "SourceLanguageId": 2
    },
    {
      "TargetSegments": {
        $elemMatch: {
          "LanguageId": 1
        }
      }
    }
  ]
}).forEach(function(item)
{
    var targets = item.TargetSegments;

    for(var index = 0; index < targets.length; index++)
    {
        var target = targets[index];
        target.Segment = null,
        target.Colors= [],
        target.Widths= [],
        target.Heights= []
    }

    db.playground.save(item);
});



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Nodejs Mongodb cập nhật nhiều bộ sưu tập

  2. Cách tốt hơn để chuyển Bộ sưu tập MongoDB sang Bộ sưu tập khác

  3. mongoengine + django cách đếm số lượng mục của cùng một nội dung

  4. Bí danh trường với Mongoid và Rails

  5. Những ký tự nào KHÔNG được phép trong tên trường MongoDB?