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

Đếm thuộc tính tài liệu con trong một phép chiếu bằng cách sử dụng MongoDB và Javascript

  • $map để lặp lại vòng lặp của subRoom mảng và in để trả về các trường bắt buộc
  • $filter để lặp lại vòng lặp của notifications$size để nhận tổng số phần tử từ kết quả đã lọc
db.collection.find({ id: 1 },
{
  _id: 0,
  room: 1,
  notRead: {
    $size: {
      $filter: {
        input: "$notifications",
        cond: {
          $not: { $in: ["User1", "$$this.read"] }
        }
      }
    }
  },
  "subRoom": {
    $map: {
      input: "$subRoom",
      in: {
        id: "$$this.id",
        notRead: {
          $size: {
            $filter: {
              input: "$$this.notifications",
              cond: { $not: { $in: ["User1", "$$this.read"] } }
            }
          }
        }
      }
    }
  }
})

Sân chơi




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB allowDiskUse không hoạt động ..

  2. Nhập dữ liệu vào phiên bản MongoDB

  3. Cách chuyển đổi bộ bản sao MongoDB thành một máy chủ độc lập

  4. find_by_sql tương đương cho mongoid?

  5. db.collection không phải là một hàm khi sử dụng MongoClient v3.0