Jestem nowsza w MongoDB z CakePHP.MongoDB: Nie można kanonicznie sformułować zapytania: Projekcja BadValue nie może mieć kombinacji włączenia i wyłączenia
Kiedy piszę kolejne zapytanie, będzie ono działać bardzo dobrze.
db.testData.find()
{ "_id" : ObjectId("53d1f79db8173a625961ff3d"), "name" : "sadikhasan", "created" : ISODate("2014-07-25T06:22:21.701Z") }
Kiedy uruchomić następujące zapytanie aby uzyskać tylko nazwę, ale to pokazuje błąd jak
db.testData.find({},{name:1, created:0})
error: {
"$err" : "Can't canonicalize query: BadValue Projection cannot have a mix of inclusion and exclusion.",
"code" : 17287
}
Kiedy uruchomić następujące zapytanie aby uzyskać tylko wymienić z _id:0
to dobrze wykonać.
db.testData.find({},{name:1, _id:0})
{ "name" : "sadikhasan" }
Moja qeustion to dlaczego ja dostaję błąd, gdy piszę created:0
w liście projekcji. Dzięki za pomoc z góry.
Kiedy chcę listę projekcji, zawsze przekazuję '_id: 0'? – Sadikhasan
@Sadikhasan No. To jest po to, aby wykluczyć pole "_id", które zawsze jest domyślnie włączone. W przykładzie podano łącze, które wyjaśnia bardziej szczegółowo. Wraz z różnymi innymi przykładami samouczków powinieneś poświęcić trochę czasu na czytanie. –
pomysł, dlaczego wybrał ten projekt? Rozsądnie jest pozwolić na bycie "zbyt" pełnym gadaniem w zapytaniach – Richard