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

Cara menggunakan tipe desimal di MongoDB

MongoDB tidak mendukung desimal dengan benar hingga MongoDB v3.4. Sebelum versi ini, desimal disimpan sebagai string untuk menghindari kesalahan presisi.

Sebelum v3.4 Simpan desimal sebagai string, tetapi ini mencegah operasi aritmatika. Operator sebagai $min , $avg , ... tidak akan tersedia. Jika presisi bukan masalah besar, maka Anda mungkin dapat beralih ke double .

v3.4+ Anda perlu memastikan bahwa prasyarat berikut benar:

  • Server MongoDB setidaknya harus v3.4.
  • MongoCSharpDriver setidaknya harus v2.4.3.
  • Database harus memiliki featureCompatibilityVersion setel ke '3.4' . Jika database Anda telah dibuat oleh versi MongoDB yang lebih lama dan Anda telah memutakhirkan server Anda ke v3.4, database Anda mungkin masih menggunakan versi yang lebih lama.

Jika Anda memiliki semua properti yang ditetapkan, maka daftarkan serializer berikut untuk menggunakan decimal128 ketik:

BsonSerializer.RegisterSerializer(typeof(decimal), new DecimalSerializer(BsonType.Decimal128));
BsonSerializer.RegisterSerializer(typeof(decimal?), new NullableSerializer<decimal>(new DecimalSerializer(BsonType.Decimal128)));


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bagaimana menemukan nama bidang MongoDB pada kedalaman yang sewenang-wenang

  2. Bagaimana saya bisa menelusuri atau menanyakan data MongoDB langsung?

  3. mongodb $exists selalu mengembalikan 0

  4. Cara Mencadangkan dan Mengembalikan ClusterControl

  5. Buat Indeks Teks Wildcard di MongoDB