I already have this document at the db:
> db.test.find()
{ "_id" : ObjectId("4fd349242b153bfbd95a15a8"), "nombre" : "Javier", "apellido" : "Roger" }
Now I execute this query:
db.test.find({"nombre": "Javier"})
{ "_id" : ObjectId("4fd349242b153bfbd95a15a8"), "nombre" : "Javier", "apellido" : "Roger" }
It works as spected.
But when I execute this query, mongodb is not returning any results:
db.test.find({$or:[{"nombre": "Javier"}, {"apellido": "Javier"}]})
When I insert that document your syntax works for me.
$orwas new in MongoDB v1.6. Is it possible you’re running a really old version?