MongoDB Vergleichsoperatoren mit null
n MongoDB möchte ich $ gt- und $ lt-Vergleichsoperatoren verwenden, bei denen der Wert @ sein könntNul. Wenn die Operatoren nicht mit @ arbeitNul, Ich habe nach Dokumentation gesucht, aber keine gefunden. In beiden Fällen wurden keine Dokumente zurückgegeben (obwohl $ ne, $ gte und $ lte Dokumente zurückgegeben haben). Dies bedeutet, dass es Dokumente gab, die gleich und ungleich @ wareNul).
Ich würde erwarten, dass $ gt im Wesentlichen wie $ ne funktioniert (alsNul ArtMongo comarison order ist so niedrig) und $ lt nichts aus dem gleichen Grund zurückzugeben.
Ich hatte gehofft, dass dies funktioniert, da der Wert, den ich an die Abfrage übergebe, variabel ist (möglicherweiseNul), und ich möchte keinen Sonderfall für @ schreiben müssNul.
Beispiel dessen, was ich erwartet hatte, angesichts der folgenden Auflistung:
{
id: 1,
colNum: null
}
{
id: 2,
colNum: 72
}
{
id: 3
}
Ich würde die folgende Abfrage erwarten:
db.testtable.find( { "colNum" { $gt : null } } )
Zurückgeben
{
id: 2,
colNum: 72
}
s wurde jedoch nichts zurückgegebe
Gibt es einen Grund, warum $ gt und $ lt nicht mit @ zusammenzuarbeiten scheineNul, oder ist es ein MongoDB-Fehler, oder soll er tatsächlich funktionieren und es liegt wahrscheinlich ein Benutzerfehler vor?