蒙古石和R

Mongolite and R

我有下面的代码,为什么它不起作用?谢谢

library(mongolite)
library(jsonlite)

id <- c('35325073','35325078')

id_list_JSON <- toJSON(id)

test3 <- m1$find('{"_id": {"$in": id_list_JSON}}', fields = '{"_id" : 1, "f.fid" : 1, "ud" : 1}')

Error: Invalid JSON object: {"_id": {"$in": id_list_JSON}}

@Marc B 是正确的,因为您必须构建字符串以使用 id_list_JSON 中包含的值。

在 R 中你可以使用 paste0 来做到这一点

test3 <- m1$find(paste0('{"_id": {"$in": ', id_list_JSON, '}}'), 
                 fields = '{"_id" : 1, "f.fid" : 1, "ud" : 1}')

paste0 行给出

paste0('{"_id": {"$in": ', id_list_JSON, '}}')

# "{\"_id\": {\"$in\": [\"35325073\",\"35325078\"]}}"

这应该可以在您的查询中使用。