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

MongoDB $ mul

MongoDB có $mul toán tử cập nhật trường cho phép bạn nhân một giá trị với một số tiền cụ thể.

Nếu trường chưa tồn tại, trường sẽ được tạo và giá trị của nó được đặt thành 0 (0 ) sử dụng cùng một kiểu số với hệ số nhân.

Ví dụ

Giả sử chúng ta có một bộ sưu tập với tài liệu sau:

{ "_id" : 1, "bar" : 10 } 

Chúng ta có thể sử dụng $mul toán tử kết hợp với update() phương pháp để tăng thanh bar trường.

Như thế này:

db.foo.update(
  { _id: 1 },
  { $mul: { bar: 2 } }
)

Đầu ra:

WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

Điều này cho chúng tôi biết rằng một tài liệu đã được khớp và sửa đổi.

Hãy kiểm tra lại bộ sưu tập:

db.foo.find()

Kết quả:

{ "_id" : 1, "bar" : 20 } 

Chúng tôi có thể thấy rằng số tiền đã tăng gấp đôi lên 20.

Nhân một trường không tồn tại

Khi bạn sử dụng $mul trên một trường không tồn tại trong tài liệu, trường được thêm và đặt thành 0 (0 ) sử dụng cùng một kiểu số với hệ số nhân.

Ví dụ:

db.foo.update(
  { _id: 1 },
  { $mul: { bar: 3, extra: 2 } }
)

Đầu ra:

WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

Lưu ý rằng chúng tôi đã cập nhật hai trường; thanh bar và trường extra trường (ban đầu không tồn tại).

Hãy kiểm tra lại tài liệu:

db.foo.find()

Kết quả:

{ "_id" : 1, "bar" : 60, "extra" : 0 } 

Chúng ta có thể thấy rằng thanh bar trường đã được nhân với 3 và một extra mới trường đã được thêm và đặt thành 0 .

Loại hỗn hợp

Phép nhân với các giá trị của kiểu số hỗn hợp (số nguyên 32 bit, số nguyên 64 bit, float) có thể dẫn đến chuyển đổi kiểu số.

Xem tài liệu MongoDB để được giải thích.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cách lặp lại đúng cách qua một tệp json lớn

  2. Truy vấn kích thước mảng nội bộ trong MongoDB

  3. Xử lý BSON Marshaling tùy chỉnh

  4. Thay đổi loại trường bên trong tập hợp mongoDB và $ lookup có sử dụng chỉ mục trên các trường hay không?

  5. Cách khuyến nghị để giảm chỉ mục bằng Mongoose là gì?