在mongolite的find()查询中使用IN条件更正语法

时间:2016-08-05 21:20:43

标签: r mongolite

我正在尝试使用IN条件来查询mongolite包。如果我使用基于此页面的mongo控制台,我可以使查询工作: https://docs.mongodb.com/manual/reference/operator/query/in/#op._S_in。我在我的R代码中尝试了以下变体,但最终得到0结果或语法错误:

aaContDF <- mongoBirdData$find('{ "aircraftAirlineOperator": { "$in":
                               { [ "AMERICAN AIRLINES",
                               "CONTINENTAL AIRLINES" ] } } }',
                               fields = '{"recordId":1, "originState":1,
                               "aircraftAirlineOperator":1,
                               "airportName":1}')

显示错误消息:

Error: Invalid JSON object: { "aircraftAirlineOperator": { "$in":
                           { [ "AMERICAN AIRLINES",
                           "CONTINENTAL AIRLINES" ] } } }

我曾与之合作的查询一直是AND条件,尚未遇到任何OR方案。谢谢。

1 个答案:

答案 0 :(得分:0)

通过更加耐心并逐步添加作品来解决这个问题:

aaContDF <- mongoBirdData$find('{ "aircraftAirlineOperator" : 
                           { "$in" : [ "AMERICAN AIRLINES",
                           "CONTINENTAL AIRLINES"]  } }',
                           fields = '{"recordId":1, "originState":1,
                           "aircraftAirlineOperator":1,
                           "airportName":1,
                           "_id":0}')