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

Tổng hợp nhóm bằng cách sử dụng mongodb dữ liệu mùa xuân

Về cơ bản, bạn đang tìm kiếm extractYear() ánh xạ đến $year toán tử với MongoDB:

Aggregation aggregation = Aggregation.newAggregation(
    Aggregation.match(new Criteria().andOperator(criteria())),
    Aggregation.project().and("invoiceDate").extractYear().as("_id"),
    Aggregation.group("_id"),
    Aggregation.sort(Sort.Direction.DESC, "_id)
)

Điều này thường phải đi vào một $project để làm cho những người trợ giúp hài lòng.

Nếu bạn thực sự muốn biểu thức trong $group thì bạn có thể thêm một biểu thức hoạt động tùy chỉnh:

Aggregation aggregation = Aggregation.newAggregation(
  Aggregation.match(new Criteria().andOperator(criteria())),
  new AggregationOperation() {
    @Override
    public Document toDocument(AggregationOperationContext aggregationOperationContext) {
      return new Document("$group",
        new Document("_id", new Document("$year","$invoiceDate") )
      );
    }
  },
  Aggregation.sort(Sort.Direction.DESC, "_id)
)



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB:Tính toán thời gian dừng giữa mỗi lần thay đổi giá trị trạng thái

  2. Các lược đồ trong mô-đun bên ngoài không hoạt động trong Node.js

  3. Không thể ghi đè mô hình sau khi đã biên dịch Mongoose

  4. chọn 2 trường và trả về một mảng đã sắp xếp với các giá trị riêng biệt của chúng

  5. Lọc bỏ các mảng trùng lặp và trả về mảng duy nhất trong tổng hợp mongodb