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

特定の値を含まない配列を持つドキュメントを検索する

    基本的に試みていることには何の問題もありませんが、おそらくここでの唯一の説明は、 $ninのような演算子が必要であるという一般的な誤解です。 または$in 配列を照会するとき。

    また、ここで実際に行う必要があるのは、 $neとの基本的な不等式の一致です。

    Person.find({ "groups": { "$ne": group._id } })
    

    「配列」演算子は「配列ターゲット」用ではなく、便利な形式でテストするための条件の「リスト」を提供するためのものです。

    Person.find({ "groups": { "$nin": [oneId, twoId,threeId] } })
    

    したがって、単一の条件には通常の演算子を使用し、$inを保存します。 および$nin 単一の値またはリストのいずれかに対して複数の条件をテストする場合。つまり、その逆です。

    提供されたリスト内の引数の「なし」が配列の内容と一致する引数の「リスト」を渡す必要がある場合は、 $notを使用してロジックを逆にします。 演算子と$all 演算子:

    Person.find({ "groups": { "$not": { "$all": [oneId,twoId,threeId] } } })
    

    つまり、提供された「リストのどれも」が配列に存在しないことを意味します。



    1. MeteorとFibers/bindEnvironment()はどうなっていますか?

    2. JSONシリアライザーを使用したMongoDBオブジェクトIDの逆シリアル化

    3. mongodb3.xドライバーAndroidとの互換性

    4. MongoDBで提供された配列の任意の組み合わせを含む配列フィールドのマッチング