Запрос к базе данных MongoDB с использованием списка значений - PullRequest
0 голосов
/ 20 декабря 2018

У меня есть база данных матчей в крикет, где каждому матчу был присвоен уникальный MatchId.У меня есть список, который содержит Matchids нескольких выбранных совпадений, которые мне нужно запросить из базы данных MongoDB с именем "id_list"

запрос, который я использую в pymongo на python, это 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", collection,: com.mongodb.util.JSONParseException: {"MatchId": {$ in: id_list}} ^

1 Ответ

0 голосов
/ 20 декабря 2018
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)

или попробуйте таким образом

преобразовать запрос {"MatchId": {"$ in": id_list}} в объект json, используя rJson, затем преобразовать в строку,

...