我在mongo.exe中执行了一个命令。让我们尝试使用最基本的命令。
> db.tablebusiness.find({"_id": "the-simmons-paradise__41.85_-87.88"});我得到了结果:
现在我在rockmongo中尝试类似的命令。如果我执行
db.tablebusiness.find(
{"_id": "the-simmons-paradise__41.85_-87.88"}
);结果:
{
"retval": null,
"ok": 1
} 基本上,它似乎是在告诉我,结果是好的,或者类似的东西?我不确定。
如果我详细说明:
var cur = db.tablebusiness.find(
{"_id": "the-simmons-paradise__41.85_-87.88"}
);
cur.forEach(function(x){print(tojson(x))});结果:
{
"retval": null,
"ok": 1
} 同样的问题。
如果我这样做了:
function () {
return db.tablebusiness.find({"_id": "the-simmons-paradise__41.85_-87.88"});
}我得到了:
{
"retval": {
"value": "DBQuery: hello.tablebusiness -> undefined"
},
"ok": 1
} 我无法理解hello.tablebusiness ->未定义是什么意思。从上面可以看出,我成功地在mongo.exe中很好地执行了查询
看起来rockmongo的功能非常有限。我想知道如何才能真正看到结果。如何在rockmongo中执行随机的mongodb命令,并观察结果。
发布于 2012-11-09 00:37:49
首先,我同意你的观点:目前,rockmongo的功能非常有限。我使用它进行简单的查询,因为它允许我从任何支持浏览的设备访问我的远程服务器。
rockmongo中的"execute“区域与"Javascript API"一起运行,并不像mongo shell那样运行。
试试这个:
function () {
var cur = db.tablebusiness.find(
{"_id": "the-simmons-paradise__41.85_-87.88"}
);
var out = [];
cur.forEach(function(x){out.push(x);});
return(out);
}你可以点击集合名称运行简单的查询,在上面的区域输入你的查询条件...
{"_id": "the-simmons-paradise__41.85_-87.88"}...and,然后“提交查询”
发布于 2013-11-09 09:34:54
另一种可能看起来有点奇怪的替代方法是使用aggregate方法,但仅在单个$match命令中使用管道,如下所示:
function () {
return db.tablebusiness.aggregate([
{ $match: {
"_id": "the-simmons-paradise__41.85_-87.88"
}}
]);
}https://stackoverflow.com/questions/12083926
复制相似问题