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

Thùng rác và lập bảng (duy nhất / đếm) trong Mongo

Tôi vừa thử khung tổng hợp mới sẽ có trong MongoDB phiên bản 2.2 (2.2.0-rc0 đã được phát hành), khung này sẽ có hiệu suất cao hơn so với bản đồ giảm vì nó không dựa trên Javascript.

dữ liệu đầu vào:

{ "_id" : 1, "age" : 22.34, "gender" : "f" }
{ "_id" : 2, "age" : 23.9, "gender" : "f" }
{ "_id" : 3, "age" : 27.4, "gender" : "f" }
{ "_id" : 4, "age" : 26.9, "gender" : "m" }
{ "_id" : 5, "age" : 26, "gender" : "m" }

lệnh tổng hợp cho giới tính:

db.collection.aggregate(
   {$project: {gender:1}},
   {$group: {
        _id: "$gender",
        count: {$sum: 1}
   }})

kết quả:

{"result" : 
   [
     {"_id" : "m", "count" : 2},
     {"_id" : "f", "count" : 3}
   ],
   "ok" : 1
}

Để lấy độ tuổi trong thùng:

db.collection.aggregate(
   {$project: {
        ageLowerBound: {$subtract:["$age", {$mod:["$age",2]}]}}
   },
   {$group: {
       _id:"$ageLowerBound", 
       count:{$sum:1}
   }
})

kết quả:

{"result" : 
    [
       {"_id" : 26, "count" : 3},
       {"_id" : 22, "count" : 2}
    ],
    "ok" : 1
}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Xác thực Java / Mongodb

  2. MongoDB chênh lệch giữa $ orderby và Sort

  3. cách gỡ lỗi từng bước trong bản đồ / giảm của mongodb

  4. Nhập nextjs nhưng không gọi hàm throws Không tìm thấy mô-đun:Lỗi:Không thể giải quyết 'dns'

  5. Model.findOne không trả về tài liệu nhưng trả về đối tượng trình bao bọc