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

Trong ReactiveMongo 0.18.8, làm cách nào để thực hiện cập nhật một số tài liệu, với các giá trị khác nhau, trong một lệnh duy nhất?

Trong tài liệu bạn có thể xem ví dụ về các thao tác hàng loạt để chèn, cập nhật hoặc xóa.

import scala.concurrent.Future
import scala.concurrent.ExecutionContext.Implicits.global

import reactivemongo.api.bson.BSONDocument

import reactivemongo.api.bson.collection.BSONCollection

def updateWithBulk(personColl: BSONCollection) = {
  // Bulk update: multiple update
  val updateBuilder1 = personColl.update(ordered = true)
  val updates = Future.sequence(Seq(
    updateBuilder1.element(
      q = BSONDocument("firstName" -> "Jane", "lastName" -> "Doh"),
      u = BSONDocument("age" -> 18),
      upsert = true,
      multi = false),
    updateBuilder1.element(
      q = BSONDocument("firstName" -> "Bob"),
      u = BSONDocument("age" -> 19),
      upsert = false,
      multi = true)))

  updates.flatMap { ops => updateBuilder1.many(ops) }
}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. danh sách thanh lịch của các mục con lặp lại

  2. Làm thế nào để đối phó với vấn đề múi giờ khi lưu trữ ngày trong utc bằng mongod?

  3. Sao chép giá trị mảng đầu tiên sang một trường khác trong MongoDB

  4. mongo-go-driver tìm tài liệu bằng _id

  5. bson.D và bson.M cho các truy vấn tìm kiếm