6

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 とはどういう意味ですか -> undefined は私を超えています。上記からわかるように、mongo.exe で問題なくクエリを実行できました。

rockmongo の機能は非常に限られているようです。実際にどのように結果を見るのだろうか。rockmongo でランダムな mongodb コマンドを実行し、結果を観察する方法。

4

2 に答える 2

8

まず第一に、私はあなたに同意します:rockmongoは現在非常に限られた機能を持っています。ブラウジングが有効なデバイスからリモートサーバーにアクセスできるため、単純なクエリに使用します。

rockmongoの「execute」領域は「JavascriptAPI」で実行され、mongoシェルのようには動作しません。

これを試して:

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"}

...そして「クエリを送信」

于 2012-11-08T16:37:49.493 に答える
0

別の答え (少し奇妙に思えるかもしれません) は、メソッドを使用することですが、次のようaggregateに単一のコマンドでパイプラインのみを使用します。$match

function () {
  return db.tablebusiness.aggregate([
    { $match: {
      "_id": "the-simmons-paradise__41.85_-87.88"
    }}
  ]);
}
于 2013-11-09T01:34:54.240 に答える