2017-07-12 18 views
6
{ 
    "_id" : ObjectId("59660d4099c1e682e0992ced"), 
    "alpha" : [ 
     { 
      "_id" : ObjectId("59660d4199c1e682e0992cee"), 
      "number" : 1, 
      "start_at" : ISODate("2017-07-12T11:51:28.895Z"), 
      "end_at" : ISODate("2017-08-12T11:51:28.895Z"), 
      "created_at" : ISODate("2017-07-12T11:51:29.346Z"), 
      "updated_at" : null 
     } 
    ] 
} 

Tôi có một tài liệu như trên và tôi muốn để cập nhật hoặc thay đổi lĩnh vực 'số' và 'updated_at' trong một phần tử JSON của mảng 'alpha'.(Azure cosmosDB/MongoDB) Cập nhật các lĩnh vực của một phần tử cụ thể của một đối tượng trong một mảng

Tôi cố gắng này:

db.mycol.update({_id: ObjectId("59660d4099c1e682e0992ced"), alpha: {$elemMatch: {_id: ObjectId("59660d4199c1e682e0992cee")}}}, {$set: {"alpha.$.number": 2, "alpha.$.updated_at": new Date()}}) 

Nó hoạt động tốt với máy chủ MongoDB bình thường. Nhưng với Azure cosmosdb/mongodb nó nói ok nhưng không thực sự cập nhật tài liệu. Tôi đang làm gì sai?

+0

Prataksha, bạn có tìm thấy bất kỳ công việc nào không? – GeekOnGadgets

+0

vâng, trước hết tôi lấy toàn bộ mảng ** alpha ** sau đó tôi lặp qua nó và thay đổi dữ liệu tôi muốn thay đổi. Và cuối cùng Sau khi tôi đã hoàn thành, tôi ** $ đặt ** mảng ** alpha ** lần nữa với một giá trị cập nhật mới. Tôi biết nó sẽ không giống như hoàn toàn nguyên tử như ** findAndModify ** nhưng bây giờ nó thực hiện công việc đó. Đang chờ sự hỗ trợ đầy đủ của AZURE. – Prataksha

Trả lời

3

cập nhật hoặc thay đổi lĩnh vực 'số' và 'updated_at' trong một phần tử JSON của 'alpha' mảng

Không phải tất cả MongoDB của cú pháp truy vấn/khả năng được thực hiện trong Azure Cosmos DB: MongoDB API. Based on my test, Dường như Azure Cosmos DB: MongoDB API không hỗ trợ Cập nhật mảng bây giờ, tính năng này sẽ được hỗ trợ trong tương lai.

enter image description here

Nếu có thể, bạn có thể tạo một mục trên User Voice để đưa ra một thông tin phản hồi.

+1

Xin lưu ý rằng chúng tôi đã thực hiện một số tiến bộ hơn về các hoạt động CRUD và truy vấn được hỗ trợ và bảng ở trên hiện không phản ánh được hỗ trợ/sẽ được hỗ trợ. Và như Fred đã lưu ý, đối với bất kỳ cú pháp truy vấn và khả năng nào chưa được triển khai, vui lòng cung cấp phản hồi qua [Giọng nói người dùng API Azure Cosmos DB Mongo] (https://feedback.azure.com/forums/599059-azure -cosmos-db-mongodb-api). –

+0

@DennyLee Có tài liệu nào về các tính năng Azure Cosmos Db hỗ trợ và không hỗ trợ liên quan đến Mongo API không? – tabz100

+0

Mặc dù chúng tôi đang làm việc về điều này và sẽ sớm phát hành. –

Các vấn đề liên quan