2

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

我在 python 上的 pymongo 中使用的查询是 query = { '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} } ^

4

1 回答 1

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 对象,然后转换为 string ,

于 2018-12-20T05:52:19.777 回答