RMongo を使用して R から mongo データベースにクエリを実行し、いくつかのネストされたドキュメントの値を返そうとしています。
RMongo のドキュメントに目を通して、次のクエリを理解しました。
output <- dbGetQueryForKeys(mongo, 'test_data', '{"foo": "bar"}', '{"foo":1}')
引数の場所...
db = mongo
collection = 'test_data'
query = '{"foo": "bar"}'
keys = 'Specify a set of keys to return.'
の 1 は何'{"foo":1}'
ですか? このキーセットの構造は何ですか? このブログ投稿を確認すると、次のような形式が見つかりました。
結果 < - dbGetQueryForKeys(mongo, "items", "{'publish_date' : { '$gte' : '2011-04-01', '$lt' : '2011-05-01'}}", "{' publish_date' : 1, 'rank' : 1}")
どうやら、キーには値 1 が必要ですか?
ネストされたドキュメントのキーを取得するにはどうすればよいですか? みたいなのが欲しかったら…
output <- dbGetQueryForKeys(mongo, 'test_data', '{"foo": "bar"}', '{"foo1.foo2.foo3.foo4":1,"foo1.foo2.foo3.bar4":1}')
ネストされたキーの場合、現在、もっと似たものを返しています...
X_id
1 50fabd42a29d6013864fb9d7
foo1
1 { "foo2" : { "foo3" : { "foo4" : "090909" , "bar4" : "1"}}}
... whereoutput[,2]
は、キー foo4 と bar4 に関連付けられた値の 2 つの個別の変数 ("090909", "1") ではなく、長い文字列です。