MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

MongoDB:Jak wykonać zapytanie o rekordy, w których pole ma wartość NULL lub nie jest ustawione?

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 } } )


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Modyfikuj i odtwarzaj oplog MongoDB

  2. Najlepsze oprogramowanie pośredniczące do przechowywania sesji dla Express + MongoDB

  3. Jak zwrócić format daty ISO w PHP dla MongoDB?

  4. MongoDB, Mongoose:Jak znaleźć poddokument w znalezionym dokumencie?

  5. Uzupełnij brakujące daty w rekordach