MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Agregasi grup menggunakan data pegas mongodb

Anda pada dasarnya mencari extractYear() yang memetakan ke $year operator dengan 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)
)

Ini biasanya perlu masuk ke $project untuk membuat para pembantu senang.

Jika Anda benar-benar menginginkan ekspresi dalam $group maka Anda dapat menambahkan ekspresi operasi khusus:

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. Menghubungkan Spark ke Beberapa Koleksi Mongo

  2. Kapan saya harus membuka dan menutup koneksi MongoDB?

  3. Temukan dan Hitung elemen koleksi dengan Mongoose

  4. Bagaimana cara memperbarui bidang dalam subdokumen array yang terkandung dalam subdokumen array di MongoDB menggunakan driver C #?

  5. $push menggunakan terlalu banyak memori dan tidak dapat tumpah ke disk. Batas memori:104857600 byte