rmongodb $查询问题

时间:2015-07-25 14:46:04

标签: r rmongodb

我非常喜欢使用rmongodb,并且已经想出了如何做很多不同的事情/查询组合,但这个仍然让我感到困惑。我试图获得所有具有符号的文档:字段等于向量的元素(在r中命名为符号)。

我试图在r

中复制的MongoDB DB上运行的查询
{symbol: {"$in": ["SYMBOLA","SYMBOLB","SYMBOLC","SYMBOLD","SYMBOLE"]} }

在...中

symbols <- list("SYMBOLA","SYMBOLB","SYMBOLC","SYMBOLD","SYMBOLE")
mongo.find.all(mongo, namespace, query = list(symbol = list('$in' = symbols)))

似乎没有用(因为我不熟悉语法,我没有运气就尝试了各种各样的组合。感觉我在这里错过了一些东西。

有关如何根据R中的符号向量查询特定文档的任何帮助都将是一个巨大的帮助。

编辑: 这是BSON的印刷品:

symbol : 3   
        $in : 4      
            0 : 2    SYMBOLA
            1 : 2    SYMBOLB
            2 : 2    SYMBOLC
            3 : 2    SYMBOLD
            4 : 2    SYMBOLE

1 个答案:

答案 0 :(得分:1)

这在我的机器上运行良好

symbols <- list("SYMBOLA","SYMBOLB","SYMBOLC","SYMBOLD","SYMBOLE")
mongo <- mongo.create()
for (ch in symbols) 
  mongo.insert(mongo, 'test.test', list(symbol = ch))
# insert one more symbol that don't match our condition
mongo.insert(mongo, 'test.test', list(symbol = 'incorrect_symbol'))

res <- mongo.find.all(mongo, 'test.test', query = list(symbol = list('$in' = symbols)))
length(res)
#> 5