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

mongodb đặt giá trị trường bằng if else trong quá trình cập nhật tài liệu

MongoDB không hỗ trợ loại cập nhật có điều kiện mà bạn đang tìm kiếm. Tuy nhiên, bạn vẫn có thể làm tốt hơn việc sử dụng phương pháp tìm, lặp và lưu.

Di chuyển kiểm tra điều kiện vào update công cụ chọn truy vấn và sau đó phát hành hai bản cập nhật (một bản cho mỗi trường hợp), sử dụng {multi: true} để áp dụng bản cập nhật cho tất cả các tài liệu phù hợp.

// Start with the "if" update
Documents.update(
    {some_condition: true, "some field": "some condition"}, 
    {$set: {"status": "value 1"}},
    {multi: true},
    function(err, numAffected) {
        // Now do the "else" update, using $ne to select the rest of the docs
        Documents.update(
            {some_condition: true, "some field": {$ne: "some condition"}}, 
            {$set: {"status": "value 2"}},
            {multi: true},
            function(err, numAffected) {
                // All done.
            }
        )
    }
)


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cách sắp xếp tài liệu dựa trên độ dài của trường Mảng

  2. MongodDB $ chỉ kéo một phần tử từ mảng

  3. Làm cách nào để làm phẳng mảng kép trong mongoDB?

  4. cách thêm ng-model vào các trường văn bản đầu vào được tạo động

  5. cấu trúc thư mục cho ngăn xếp MEAN