2012-08-09 78 views
0

好,我需要一个快速的方法做的MongoDBMongoDB的PHP查询在不

以下

我希望做一个查询,将搜索任何东西,没有在水果或蔬菜列字苹果集合中

这里等

{ 
"fruit":"apple" 
},{ 
"fruit":"orange" 
},{ 
"fruit":"banana" 
} 
+0

除此之外:所呈现的数据既不是有效的BSON文档,也不是以某种方式存储在数据集中的数据......我们必须猜测吗? – 2012-08-09 05:14:11

+0

@Maulwurfn它不是BSON,但它是JSON其中MongoDB使用 – RussellHarrower 2012-08-09 05:47:25

+0

@RussellHarrower我觉得你的困惑,MongoDB的控制台使用JSON,MongoDB是BSON只有BSON。查询被输入到Mongo服务器,因为BSON文档和文档被存储和检索为BSON。 – Sammaye 2012-08-09 07:35:24

回答

2

你可能想使用运营商是$nin( “不”):

db.market.find({ 
    'fruit': {$nin:['apple']}, 
    'veg': {$nin:['apple']} 
}) 

您也可以使用$not来取消条件的标准。

+0

谢谢!这应该工作,只是不是100%肯定,如果这将工作,因为我需要做$ NOT,还可以找到其他的东西 – RussellHarrower 2012-08-09 06:54:33