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

Mongo nhóm theo tháng sử dụng UNIX thời gian mili giây

Bạn có thể thử tổng hợp bên dưới trong mongodb 4.0

Bạn có thể chuyển đổi timestamp cho đến nay bằng cách sử dụng $toDate tổng hợp và sau đó là $group với $month tổng hợp

db.collection.aggregate([
  { "$match": { "type": "deposits" }},
  { "$addFields": {
    "date": {
      "$toDate": "$timestamp"
    }
  }},
  { "$group": {
    "_id": { "$month": "$date" },
    "deposits": {
      "$push": "$$ROOT"
    }
  }}
])

Bạn có thể thử tổng hợp bên dưới trong mongodb 3.4

Trong 3,4 bạn có thể chuyển đổi timestamp cập nhật bằng cách thêm new Date() trong đó và $group nó bằng cách sử dụng $dateToString tổng hợp

db.collection.aggregate([
  { "$match": { "type": "deposits" }},
  { "$addFields": {
    "date": {
      "$add": [ new Date(0), "$timestamp" ]
    }
  }},
  { "$group": {
    "_id": {
      "$dateToString": {
        "format": "%m",
        "date": "$date"
      }
    },
    "deposits": {
      "$push": "$$ROOT"
    }
  }}
])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Tham chiếu tài liệu Mongoose có mối quan hệ một-nhiều

  2. Docker-compos với Loopback và Mongodb không kết nối được mongdb

  3. Chuyển đổi giữa JPA và Mongo trong ứng dụng Spring Boot MVC

  4. Thay đổi một đối tượng hiện có trong một mảng nhưng vẫn bảo toàn tính duy nhất chính

  5. Tôi cần truy xuất đối tượng MongoDB chỉ với mục mảng của bộ lọc