【问题标题】:Correct syntax with IN condition on a find() query in mongolite在 mongolite 中的 find() 查询中使用 IN 条件的正确语法
【发布时间】:2016-08-05 21:20:42
【问题描述】:

我正在尝试使用 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 场景。谢谢你。

【问题讨论】:

    标签: r mongolite


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 2016-03-20
      • 1970-01-01
      • 2018-12-29
      • 1970-01-01
      • 2017-07-15
      • 2019-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多