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

MongoDB:Cách nhận độ chính xác N số thập phân trong một truy vấn

Bạn có thể thực hiện việc này với $ where nhà điều hành.

db.collection.find({ "$where": function() { 
    return Math.round(this.amount.value * 100)/ 100 === 1.12; 
    }
})

CHỈNH SỬA (sau nhận xét này )

Trong trường hợp này, bạn nên sử dụng khung tổng hợp, đặc biệt là $ redact và điều này nhanh hơn nhiều so với giải pháp sử dụng $ where

db.collection.aggregate([
    { "$redact": { 
        "$cond": [
            { "$eq": [
                { "$subtract": [ 
                    "$amount.value", 
                    { "$mod": [ "$amount.value",  0.01 ] }
                ]}, 
                0.03
            ]}, 
            "$$KEEP", 
            "$$PRUNE"
        ]
     }}
])


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Gọi hàm js máy chủ trên mongodb từ java

  2. Tổng hợp và giảm bớt một mảng lồng nhau dựa trên một ObjectId

  3. Phương thức Mongoose findOne truy xuất tài liệu hợp lệ bị thiếu _id

  4. MongoDB sử dụng nhiều bộ nhớ

  5. Sử dụng bản sao lưu để khắc phục các tình huống lỗi thường gặp cho MongoDB