No se puede mezclar inclusión y exclusión, la única la excepción es el _id
campo.
Por ejemplo, si tiene esto:
{
"_id": ObjectId("53d1fd30bdcf7d52c0d217de"),
"name": "bill",
"birthdate": ISODate("2014-07-80T00:00:00.000Z"),
"created": ISODate("2014-07-25T06:44:38.641Z")
}
Si todo lo que desea es el "nombre" y la "fecha de nacimiento", debe hacer esto:
db.collection.find({},{ "_id": 0, "name": 1, "birthdate": 1 })
O esto:
db.collection.find({},{ "_id": 0, "created": 0 })
Pero no está permitido "mezclar" ninguna otra operación que no sea "_id"
db.collection.find({},{ "_id": 0, "name": 1, "created": 0 })
Eso también produciría un error.
Todo esto está cubierto en las páginas del manual.