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

Khung tổng hợp MongoDB - Làm thế nào để đối sánh theo Phạm vi ngày, Nhóm theo Ngày và Lợi tức Trung bình cho mỗi ngày?

Sự cố dường như là với _id bạn đang sử dụng cho $ group. Bạn nên nhóm theo $day thay vì null , nếu bạn muốn nhóm kết quả theo ngày. Hãy thử điều này:

PriceHourly.aggregate([
    { $match: { date: { $gt: start, $lt: end } } },
    { $group: { _id: "$day", price: { $avg: '$price' } } }
], function(err, results){
    console.log(results); 
});

Điều đó nói rằng, bạn không cần phải lưu trữ ngày và giờ dưới dạng các phần tử riêng biệt trong tài liệu. Đó là dữ liệu dư thừa. Bạn có thể trích xuất dayhour từ day trong truy vấn tổng hợp bằng cách sử dụng Date Aggregation toán tử.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Lỗi [ERR_HTTP_HEADERS_SENT] Không thể đặt tiêu đề sau khi chúng được gửi đến máy khách

  2. Lỗi tràn bộ nhớ khi sử dụng truy vấn tổng hợp và $ nhóm

  3. Làm cách nào tôi có thể lấy mongo mapper để tạo tệp config / mongo.yml trong Rails 4

  4. nhập lược đồ mongoose vào một tệp giản đồ khác làm cho lược đồ đã nhập không được xác định

  5. Cách tra cứu $ bằng cách tránh các giá trị null trong mongodb tổng hợp