使用值列表查询MongoDB数据库

时间:2018-12-20 04:32:01

标签: r mongodb rmongo

我有一个板球比赛数据库,每个比赛都被分配了一个唯一的MatchId。我有一个列表,其中包含一些需要从名为“ id_list”的MongoDB数据库中查询的一些选择匹配项的Matchids

我在python上的pymongo中使用的查询是 查询= {'MatchId':{'$ in':id_list}} 我尝试在Rmongo上使用相同的查询

library(RMongo)
mongo <- mongoDbConnect("db_name", "127.0.0.1", 27017)
df_t20 <- dbGetQuery(mongo, 'match_info', '{"MatchType": "T20"}')
id_list<-as.vector(df_t20$MatchId)
t20 <- dbGetQuery(mongo, 'deliveries', '{"MatchId": { $in: id_list} }')
head(t20)
  

.jcall(rmongo.object@javaMongo,“ S”,“ dbGetQuery”,   集合::com.mongodb.util.JSONParseException:{“ MatchId”:{$ in:   id_list}} ^

1 个答案:

答案 0 :(得分:0)

library(RMongo)
mongo <- mongoDbConnect("db_name", "127.0.0.1", 27017)
df_t20 <- dbGetQuery(mongo, 'match_info', '{"MatchType": "T20"}')
id_list<-as.vector(df_t20$MatchId)
t20 <- dbGetQuery(mongo, 'deliveries', '{"MatchId": { "$in": id_list} }')
head(t20)

或 尝试这种方式

使用rJson转换{“ MatchId”:{“ $ in”:id_list}}查询到json对象,然后将其转换为字符串,