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。
答案 0 :(得分:1)
MongoDB中没有等效的查询。它是一个无模式的数据库,这意味着每个文档都可以有完全不同的字段集。
答案 1 :(得分:0)
find 方法返回一个游标迭代,您将获得一个结果,而该结果依赖于驱动程序可能是一个哈希表或一个字典,其中的键是文档属性的名称。
类似的东西:
{"name" : "John","age" : 30, "_id" : "497ce96f395f2f052a494fd4"}
以便“字段名称”为“name”,“age”,“_ id”
请注意
由于Mongo对于查询中的每个文档都是无模式的,因此可能存在不同的键。