0
im neueren gruppiert auf mongobd, und ich habe 2 Anfragen: frist:Unterschied zwischen Abfragen mit
db.movies.aggregate([
{ "$match": {
$and : [
{ "imdb.rating": { $lt: 7 }},
{$and: [ {"genres": { "$ne": "Crime" } }, {"genres": { "$ne": "Horror" } }]},
{$and: [ {"languages": { "$eq": "English" } }, {"languages": { "$eq": "Japanese" } }]},
{$or: [ {"rated": { "$eq": "PG" } }, {"rated": { "$eq": "G" } }]}
]
}
}
]).itcount()
Das Ergebnis seiner: 23
Und jetzt mit diesem:
db.movies.aggregate([
{ "$match": {
"imdb.rating": { $lt: 7 },
$and: [ {"genres": { "$ne": "Crime" } }, {"genres": { "$ne": "Horror" } }],
$or: [ {"rated": { "$eq": "PG" } }, {"rated": { "$eq": "G" } }],
$and: [ {"languages": { "$eq": "English" } }, {"languages": { "$eq": "Japanese" } }]
}
}
]).itcount()
Das Ergebnis ist 25,
Aber jetzt kann ich nicht verstehen, was der Unterschied zwischen zwei Abfragen ist, kann Hilfe dabei?
und warum die Ergebnisse es nicht gleich? –
Whoa; habe ich falsch gelesen? Ich dachte, dass die zweite Version ALSO 23 zurückgeben würde, und Sie wollten nur eine Anleitung für Kurzschrift. OK. Könnten Sie 1 oder 2 Beispieldokumente aus der Filmsammlung veröffentlichen? Unter anderem können die $ und für Sprachen $ eq Englisch und Japanisch niemals wahr sein. –