検索

ホームページ  >  に質問  >  本文

如何用Mongodb复杂条件查询数组内成员?

[{
    "_id" : ObjectId("55f181e43fdda0be857daaf4"),
    "form_info" : [ 
        {
            "val" : "王思聪",
            "id" : "1"
        }, 
        {
            "val" : "13800138000",
            "id" : "2"
        }
    ],
    "tags" : [],
    "__v" : 0
},
{
    "_id" : ObjectId("55f181e43fdda0f48578acf4"),
    "form_info" : [ 
        {
            "val" : "李丽珍",
            "id" : "1"
        }, 
        {
            "val" : "13934438010",
            "id" : "2"
        }
    ],
    "tags" : [],
    "__v" : 0
}]

如果我想筛选form_info数组内符合 成员对象内id为1,val王思聪id为2,val13800138000 的记录。

即结果是:

[{
    "_id" : ObjectId("55f181e43fdda0be857daaf4"),
    "form_info" : [ 
        {
            "val" : "王思聪",
            "id" : "1"
        }, 
        {
            "val" : "13800138000",
            "id" : "2"
        }
    ],
    "tags" : [],
    "__v" : 0
}]

该怎么写好? 谢谢大大们

PHPzPHPz2818日前687

全員に返信(2)返信します

  • 漂亮男人

    漂亮男人2017-04-28 09:06:07

    あなたの記録がデータベースにどのように保存されているか見てもらえますか?これです:

    リーリー

    それとも配列内の各サブドキュメントは独立したレコードですか?上記のような場合は、_id を直接確認するだけで、唯一のレコードが取得されます。私の理解によれば、次のクエリを実行します:

    リーリー

    以上です

    返事
    0
  • 怪我咯

    怪我咯2017-04-28 09:06:07

    私はmongodbを学習しており、SFに関するいくつかの質問に答えようとしています。

    これは mongodb の埋め込み配列に対するクエリです。インデックスがわかっている場合は、数値インデックス クエリを使用できます。

    配列インデックスを使用して埋め込みドキュメントのフィールドと一致させる

    クエリは次のように記述できます:

    リーリー

    返事
    0
  • キャンセル返事