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

サブドキュメントにアクセスするmongodb

    これは実際にはありません。最初のクエリ、db.users.find({"user":{"login":"tester"}});userを探していることを意味します これは{"login":"tester"}に相当します loginを持つユーザーではなく、完全にオブジェクト フィールドはtesterと同じです 。その基準に一致するドキュメントが1つあり、そのドキュメントは実際にクエリ結果として返されます。

    同様に、2番目のクエリdb.users.find({"user":{"name":"anil"}});userを探していることを意味します これは{"name":"anil"}と同じです 完全にオブジェクト。そのようなuserはありません 。クエリと部分的に一致するドキュメントが1つありますが、それだけでは不十分です。

    userをお探しの場合 nameを使用 anilに等しい 、ドット表記を使用します 2番目のクエリグループで行ったように、サブドキュメントにアクセスします。

    はい。これが正しい方法です。




    1. c#ドライバーを使用してMongoDBで新しいデータベースを作成する方法

    2. Redisトランザクションと長時間実行されるLuaスクリプト

    3. 他のコンテナからのDockermongoイメージ「接続が拒否されました」

    4. 射影配列サブドキュメントから特定のフィールドのみを返します