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

Object.keys、mongodbでキーのリストを取得する方法

    {"colors.*.prestock" : {$gte:30}}のようなクエリ SERVER-267 によると、これは不可能です。 、そしてこれが今後数年間でサポートされるとは思えません。

    最善の策は、スキーマを配列に変更することです。

    colors: [
     { "color" : "Green", "instock" : 50, ... },
     { "color" : "Yellow", "instock" : 50, ... },
    ]
    

    次に、クエリを実行できます

    db.foo.find( {"colors.prestock" : {$gte:30}} )
    

    これにより、すべての色を含むオブジェクト全体が返されることに注意してください。つまり、クエリ制約が保持されていない色も返されます。これは、集計フレームワークを使用して解決できますが、ここでも、$unwindのみを使用して解決できます。 これにはcolorsも必要です 配列になります。



    1. Redisの更新は同期していますか?

    2. ValueError:Pythonを使用してjsonファイルをインポートする際の追加データエラー

    3. findメソッドでAND-演算子を使用します

    4. golangを使用してmongodbで$lookupを使用してカウント値を取得するにはどうすればよいですか?