2016-07-11 1 views
0

Ich habe eine eindeutige Abfrage für eine Sammlung ausgeführt. Die Abfragesyntax:Mongo unterschiedliche Abfrage gibt mehrere Datensätze zurück, von denen einer "" ist. Aber find null findet es nicht

Ich habe eine Reihe von Ergebnissen - eine davon war "" (Null).

ich die Platte dann zu finden versucht, der einen Nullwert für das betreffende Feld hatte:

db.Collection.find({"dict.field": null}) 

Zu meiner Überraschung wurde kein Datensatz gefunden.

Mit Ausnahme von _id werden für diese Auflistung keine Indizes festgelegt.

Das fragliche Feld ist ein Wörterbuch.

Was fehlt mir?

+0

Überprüfen Sie, ob das Feld innerhalb der Sammlung in alle Dokumente vorhanden ist. –

+0

Feld existiert. Mehr noch, ich kann den fraglichen Datensatz finden, indem ich einen einfachen Fund mit aufsteigender Sortierung durchführe. Um Zweifel zu vermeiden, ob es NULL oder ein einzelnes Leerzeichen ist, führe ich die Suchabfrage mit "" anstelle von NULL erneut aus. Kann es nur mit entweder alle suchen und aufsteigend sortieren oder mit '' finden – goggelj

Antwort

Verwandte Themen