mongoDB中的等价物返回包含字段名称的数组是什么?

时间:2011-12-30 16:56:31

标签: codeigniter mongodb

Codeigniter中的

mysql函数I使用list_field()返回包含字段名称的数组。 mongoDB中的等价物返回包含字段名称的数组是什么? 下面的代码我使用list_field函数

function GetField($execution) {
    $query = $this->db->query($execution);
    if ($query->num_rows() > 0) {
        return $query->list_fields();
    } else {
        return array();
    }
}

我的目标是,如果有复杂查询的输入,则列会根据输入查询动态显示


所以我想创建一些应用程序,例如rockmongo& phpMyAdmin的。因此,当我们输入查询时,结果与我们输入的查询相匹配。好吧,我还没有找到一个函数,MongoDB的bson字段根据用户给出的查询动态显示。 例如下面的查询:

db.users.find({}, {a:1,b:1})

所以出现的bson字段是a和b。

2 个答案:

答案 0 :(得分:1)

MongoDB中没有等效的查询。它是一个无模式的数据库,这意味着每个文档都可以有完全不同的字段集。

答案 1 :(得分:0)

find 方法返回一个游标迭代,您将获得一个结果,而该结果依赖于驱动程序可能是一个哈希表或一个字典,其中的键是文档属性的名称。

类似的东西:

{"name" : "John","age" : 30, "_id" : "497ce96f395f2f052a494fd4"}

以便“字段名称”为“name”,“age”,“_ id”

请注意

由于Mongo对于查询中的每个文档都是无模式的,因此可能存在不同的键。