MongoDB如何获取未知密钥的值

时间:2019-03-05 06:50:31

标签: php mongodb

假设您的收藏夹中包含以下文档:

{
    "_id": ObjectId("5c7e12aba50f3b32d42as472"),
    "KJK": {
        "overall": {
            "some_data": 1,
        },
        "date_wise": {
            "2018-07-26": {
                "last_inserted_id": "11",
                "overall": {
                    // some data
                },
                "data": ["temp1": 2, "temp2": 3, ]
            }
        }
    },
    "YNG": {
        "overall": {
            "some_data": 3,
        },
        "date_wise": {
            "2018-07-26": {
                "last_inserted_id": "11",
                "overall": {
                    // some data
                },
                "data": ["temp1": 4, "temp2": 4, ]
            }
        }
    },
    ....
}

有一些我想执行的操作列表,但是没有任何线索,因为我正在将其与MySQL进行比较,这是我第三次辛苦的一天。

  1. 如何通过键值搜索数据?例如KJK和YNG是动态的,我想搜索KJK并获取所有数据。
  2. 如何仅获取整个搜索到的密钥?例如如果我搜索YNG,那么它应该只返回YNG.overall。

实际上我无法做出努力,因为我不知道如何映射键来查找和获取数据。

我得到了我尝试过的密钥,可以正常工作,但是不知道下一步该怎么做。

db.tbl_mytable.find().forEach(function(doc){Object.keys(doc).forEach(function(key){allKeys[key]=1})});

编辑

问题是我想直接在Key上执行搜索操作并获取其整体数据,而不是在子文档内的任何位置进行搜索。

编辑2
我已经检查了两个重复的问题。没有一个与我提出的问题有关。

0 个答案:

没有答案