sql >> データベース >  >> NoSQL >> MongoDB

春のデータmongodbを使用したグループ集計

    あなたは基本的にextractYear()を探しています これは、 $ yearにマップされます 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)
    )
    

    これは通常、 $ projectに入力する必要があります ヘルパーを幸せにするために。

    $ group> 次に、カスタム操作式を追加できます:

    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. SpringDataRedisの有効期限キー

    2. ドキュメントフィールドMongoDBで類似性を見つける方法は?

    3. ネストされた例外はredis.clients.jedis.exceptions.JedisConnectionExceptionです:プールからリソースを取得できませんでした

    4. group by?のmongodb集約パイプラインでミリ秒を日付に変換しますか?