Jeśli sent_at
pole nie istnieje, jeśli nie jest ustawione, to:
db.emails.count({sent_at: {$exists: false}})
Jeśli jest tam i jest zerowy lub w ogóle go nie ma:
db.emails.count({sent_at: null})
Jeśli tam jest i null:
db.emails.count({sent_at: { $type: 10 }})
Sekcja Zapytanie o wartości null lub brakujące w podręczniku MongoDB opisuje sposób wykonywania zapytań o wartości null i braki danych.
Filtr równości
{ item : null }
zapytanie dopasowuje dokumenty, które zawierają pole elementu o wartości null
lub które nie zawierają item
pole.
db.inventory.find( { item: null } )
Sprawdzenie istnienia
Poniższe przykładowe zapytania dotyczące dokumentów, które nie zawierają pola.
{ item : { $exists: false } }
zapytanie pasuje do dokumentów, które nie zawierają item
pole:
db.inventory.find( { item : { $exists: false } } )
Sprawdzenie typu
{ item : { $type: 10 } }
zapytanie pasuje tylko dokumenty zawierające item
pole o wartości null
; czyli wartość pola item jest typu BSON Null
(wpisz numer 10
) :
db.inventory.find( { item : { $type: 10 } } )