MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

MongoDB:Nie można kanonizować zapytania:Projekcja BadValue nie może zawierać kombinacji włączania i wykluczania

Nie można mieszać włączenia i wykluczenia, tylko wyjątkiem jest _id pole.

Na przykład, jeśli masz to:

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

Jeśli chcesz tylko „imię” i „datę urodzenia”, musisz to zrobić:

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

Albo to:

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

Ale nie wolno "mieszać" żadnych innych operacji poza "_id"

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

To również spowodowałoby błąd.

To wszystko jest omówione na stronach podręcznika.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Jak połączyć tablice z wielu dokumentów w MongoDB?

  2. Uzyskiwanie uniksowego znacznika czasu w sekundach z MongoDB ISODate podczas agregacji

  3. Zamawianie zestawu wyników losowo w mongo

  4. Zduplikuj dokument w MongoDB przy użyciu nowego _id

  5. mangusta rekurencyjne wypełnianie