sql >> Databasteknik >  >> NoSQL >> MongoDB

MongoDB:Kan inte kanonisera frågan:BadValue Projection kan inte ha en blandning av inkludering och exkludering

Du kan inte blanda inkludering och uteslutning, det enda undantaget är _id fältet.

Till exempel om du har detta:

{
   "_id": ObjectId("53d1fd30bdcf7d52c0d217de"),
   "name": "bill",
   "birthdate": ISODate("2014-07-80T00:00:00.000Z"),
   "created": ISODate("2014-07-25T06:44:38.641Z")
}

Om allt du vill ha är "namnet" och "födelsedatumet" måste du göra detta:

db.collection.find({},{ "_id": 0, "name": 1, "birthdate": 1 })

Eller det här:

db.collection.find({},{ "_id": 0, "created": 0 })

Men det är inte tillåtet att "mixa" några andra operationer än "_id"

db.collection.find({},{ "_id": 0, "name": 1, "created": 0 })

Det skulle också ge ett fel.

Allt detta tas upp på manualsidorna.



  1. Hur $set Update Operator fungerar i MongoDB

  2. En utvecklarguide till MongoDB Replica Sets

  3. Mongodump från fjärrserver

  4. Designa Redis databastabell som SQL?