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

MongoDB-$setIsSubset演算子が$matchステージで機能しない

    $expr を使用する必要があります $setIsSubsetを使用する場合 (これは式です)$match内 :

    db.test.aggregate([
        {
            $match: {
                $expr: {
                    $setIsSubset: [["hello", "you"], "$words"]}
                }
            }
    ])
    

    3.6より前のMongoDBバージョンの場合 $redact を使用できます :

    db.test.aggregate([
        {
            $redact: {
                $cond: {
                    if: { $eq: [ { $setIsSubset: [["hello", "you"], "$words"]}, true ] },
                    then: "$$KEEP",
                    else: "$$PRUNE"
                }
            }
        }
    ])
    


    1. mongoコレクションのデータの断片化

    2. MongoDBでSalatを使用するときに、compsiteキーを処理するための最良の方法は何ですか?

    3. MongoDBコレクションを毎晩自動的に更新するにはどうすればよいですか?

    4. @EnableMongoAuditing for MongoDB on Cloud Foundry / mongolab