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

Làm thế nào để thực hiện addToSet bằng cách sử dụng trình điều khiển chính thức của Go?

$addToSet là thao tác cập nhật, nếu bạn muốn cập nhật một tài liệu, bạn có thể sử dụng Collection.UpdateOne() phương pháp.

Sử dụng bson.M và / hoặc bson.D để mô tả bộ lọc của bạn và cập nhật tài liệu.

Ví dụ:

update := bson.M{
    "$addToSet": bson.M{
        "tags": bson.M{"$each": []string{"camera", "electronics", "accessories"}},
    },
}
res, err := c.UpdateOne(ctx, bson.M{"_id": 2}, update)

Đây là một ứng dụng hoàn chỉnh, có thể chạy được kết nối với máy chủ MongoDB và thực hiện thao tác cập nhật ở trên:

ctx := context.Background()
client, err := mongo.Connect(ctx, options.Client().ApplyURI("mongodb://localhost"))
if err != nil {
    panic(err)
}
defer client.Disconnect(ctx)

c := client.Database("dbname").Collection("inventory")

update := bson.M{
    "$addToSet": bson.M{
        "tags": bson.M{"$each": []string{"camera", "electronics", "accessories"}},
    },
}
res, err := c.UpdateOne(ctx, bson.M{"_id": 2}, update)
if err != nil {
    panic(err)
}
fmt.Printf("%+v", res)



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Tại sao mongoose sử dụng lược đồ khi lợi ích của mongodb được cho là nó không có lược đồ?

  2. Làm cách nào để đặt giá trị mặc định của một số nguyên trong mongodb?

  3. MongoDB Thay thế các giá trị mảng cụ thể

  4. Cách dừng chèn các tài liệu trùng lặp trong bộ sưu tập mongodb

  5. MongoDB - Cập nhật một đối tượng trong Mảng lồng nhau