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

MongoDBで辞書の配列をクエリするにはどうすればよいですか?

    $elemMatch を使用する必要があります 埋め込みドキュメントの複数のフィールドでクエリを実行する場合は、配列内の埋め込みドキュメントをクエリします。したがって、クエリは次のようになります。

    db.collection.find( {
      "A": { $elemMatch: { name: "x", value: "1" } }
    })
    

    (name:"x", value:"1")を持つクエリドキュメントが必要な場合 または (name:"y", value:"2") 同じクエリで、$orを使用できます 次のようなelemMatchを使用します:

    db.collection.find( {
      $or: [
        { "A": { $elemMatch: { name: "x", value: "1" } } },
        { "A": { $elemMatch: { name: "y", value: "2" } } }
      ]  
    })
    

    (name:"x", value:"1")を持つクエリドキュメントが必要な場合 および (name:"y", value:"2") 同じクエリで、$andを使用できます 次のようなelemMatchを使用します:

    db.collection.find( {
      $and: [
        { "A": { $elemMatch: { name: "x", value: "1" } } },
        { "A": { $elemMatch: { name: "y", value: "2" } } }
      ]  
    })
    


    1. オブジェクトの配列をMongoDBに挿入します

    2. Mesos経由でMongoDBにSparkする

    3. EJSからJSのJSONオブジェクトへのJSON

    4. Mongodb集計、間隔基準でドキュメントをカウントする方法は?