2017-07-12 17 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 
     } 
    ] 
} 

Ben yukarıdaki gibi bir belge var ve güncellemek veya alanını 'numara' ve 'updated_at' de değiştirmek isterdiniz 'alpha' dizisinin bir JSON öğesi.(azure cosmosDB/mongoDB) Güncelleme alanları

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

Normal mongodb sunucusu ile çalışıyor:

Bu çalıştı. Ancak azure cosmosdb/mongodb ile tamam diyor ama belgeyi gerçekten güncellemiyor. Neyi yanlış yapıyorum?

+0

Prataksha, herhangi bir iş buldunuz mu? – GeekOnGadgets

+0

iyi evet, önce bütün ** alfa ** dizisini getirdim, sonra da bunun üzerinden yineliyorum ve değiştirmek istediğim verileri değiştirdim. Sonunda bittikten sonra yeni güncellenen değerler ile ** ** set ** ** alpha ** dizisi. Biliyorum, tamamen atomik ** findAndModify ** gibi olmayacak ama şimdilik bu işi yapıyor. AZURE tarafından tam destek bekliyorum. – Prataksha

cevap

3

güncelleme veya 'alfa' dizisi

Tüm mongodb sorgu sözdizimi/yetenekleri bir JSON öğesi alanını 'numara' ve 'updated_at' değiştirmek Azure Cosmos DB uygulanmaktadır: MongoDB API. Based on my test, Azure Cosmos DB: MongoDB API'sinin şimdi Dizi Güncelleştirmesi'u desteklemediği anlaşılıyor, bu özellik gelecekte desteklenecek.

enter image description here

Mümkünse, bir geribildirim vermek üzere User Voice bir öğe oluşturabilir.

+1

Desteklenen CRUD ve sorgu işlemlerinde biraz daha ilerleme kaydettiğimizi ve yukarıdaki tabloda desteklenmekte/desteklenmeyeceğini düşünmüyoruz. Ve Fred'in belirttiği gibi, henüz uygulanmadığı görünen herhangi bir sorgu sözdizimi ve yetenekleri için lütfen [Azure Cosmos DB Mongo API Kullanıcı Sesi] aracılığıyla geri bildirim sağlayın (https://feedback.azure.com/forums/599059-azure -cosmos-db-mongodb-aPI). –

+0

@DennyLee Azure Cosmos Db'nin Mongo API ile ilgili olarak hangi özellikleri desteklediğini ve desteklemediğini gösteren bir belge var mı? – tabz100

+0

Henüz bunun üzerinde çalışıyoruz ve yakında yayınlanacak. –