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

Làm thế nào để tính toán phần trăm sử dụng khía cạnh trong MongoDB?

Bạn có thể thử,

  • $group bởi userId và nhận totalSeen đếm bằng $cond if status seen , nhận tổng số thông báo bằng cách sử dụng $sum ,
  • $project để hiển thị các trường bắt buộc và tính toán tỷ lệ phần trăm bằng cách sử dụng $divide$multiply
db.collection.aggregate([
  {
    $group: {
      _id: "$userId",
      totalSeen: {
        $sum: { $cond: [{ $eq: ["$status", "seen"] }, 1, 0] }
      },
      total: { $sum: 1 }
    }
  },
  {
    $project: {
      _id: 0,
      userId: "$_id",
      notificationPercentage: {
        $multiply: [{ $divide: ["$totalSeen", "$total"] }, 100]
      }
    }
  }
])

Sân chơi




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. trường động lập bản đồ dữ liệu mùa xuân mongodb

  2. Cách lọc mảng trong tài liệu Mongodb bằng Spring

  3. Dữ liệu truy vấn không hiển thị trong chế độ xem trong zf2?

  4. Cách đặt mongod.conf bind_ip với nhiều địa chỉ ip

  5. Không thể tạo / mở tệp khóa:/data/mongod.lock errno:13 Quyền bị từ chối