MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

MongoDB $inc

MongoDB memiliki $inc operator pembaruan bidang yang memungkinkan Anda menambah nilai dengan jumlah tertentu.

Anda dapat menggunakan nilai positif dan negatif (yaitu untuk menambah atau mengurangi nilai).

Jika kolom belum ada, kolom akan dibuat dengan nilai yang ditentukan.

Contoh

Misalkan kita memiliki koleksi yang disebut dogs dengan dokumen berikut:

{ "_id" : 1, "name" : "Wag", "weight" : 10 }

Di sini, weight bidang berisi nilai yang dapat ditambah atau dikurangi.

Peningkatan

Kita dapat menggunakan $inc operator bersama dengan update() metode untuk menambah berat badan anjing ini.

Seperti ini:

db.dogs.update(
  { _id: 1 },
  { $inc: { weight: 5 } }
)

Keluaran:

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

Ini memberitahu kita bahwa satu dokumen telah dicocokkan dan dimodifikasi.

Yuk cek lagi koleksinya:

db.dogs.find()

Hasil:

{ "_id" : 1, "name" : "Wag", "weight" : 15 }

Kita bisa melihat bahwa berat badan anjing bertambah 5.

Penurunan

Anda dapat mengurangi nilainya dengan memberikan nilai negatif ke $inc operator.

Seperti ini:

db.dogs.update(
  { _id: 1 },
  { $inc: { weight: -5 } }
)

Keluaran:

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

Cek koleksinya:

db.dogs.find()

Hasil:

{ "_id" : 1, "name" : "Wag", "weight" : 10 }

Kita dapat melihat bahwa bobot sekarang telah dikurangi 5.

Menambahkan Bidang yang Tidak Ada

Saat Anda menambahkan bidang yang tidak ada dalam dokumen, bidang tersebut ditambahkan dan diberi nilai yang ditentukan.

Contoh:

db.dogs.update(
  { _id: 1 },
  { $inc: { weight: 1, height: 30 } }
)

Keluaran:

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

Perhatikan bahwa kami memperbarui dua bidang; weight bidang dan height bidang (yang awalnya tidak ada).

Mari kita periksa kembali dokumennya:

db.dogs.find()

Hasil:

{ "_id" : 1, "name" : "Wag", "weight" : 11, "height" : 30 }

Kita dapat melihat bahwa weight bidang telah bertambah dengan 1 , dan height new baru bidang telah ditambahkan dengan nilai yang ditentukan 30 .


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cara Memilih Hosting MongoDB Terbaik Untuk Bisnis Anda

  2. Sisipan mongodb massal di Meteor atau Node

  3. Membandingkan _id luwak dan string

  4. Pipa agregat MongoDB lambat setelah langkah pertandingan pertama

  5. Spring data mongodb - Opsi 'kursor' diperlukan