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

Correct syntax with IN condition on a find() query in 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场景。谢谢你。

通过更加耐心并逐步添加片段来弄清楚:

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