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

フィルタに一致する配列の最後の要素の値でドキュメントを並べ替えます。 Mongodb

    $filterを使用できます オペレーター、

    • $filter Evaluationsをフィルタリングするには Statusに基づく配列
    • $max 最新のEvaluatedAtを取得するには フィルタリングされた結果を形成する
    db.collection.aggregate([
      {
        $addFields: {
          lastSent: {
            $let: {
              vars: {
                filtered: {
                  $filter: {
                    input: "$Evaluations",
                    cond: { $eq: ["$$this.Status", "triggered"] }
                  }
                }
              },
              in: { $max: "$$filtered.EvaluatedAt" }
            }
          }
        }
      },
      { $sort: { lastSent: 1 } },
      { $project: { lastSent: 0 } }
    ])
    

    遊び場




    1. spring-data-redisを使用してredisのエンティティを更新します

    2. Mongoidを使用したバッチ挿入/更新?

    3. javascript APIを使用してGridFSで検索クエリを使用できますか?

    4. ConversionFailedException:DBObjectを永続化するが、取得するとLinkedHashMap <?,?>が返されます