sql >> Database >  >> NoSQL >> MongoDB

Test lege string in mongodb en pymongo

db.collection.find({"lastname" : {"$exists" : true, "$ne" : ""}})

In de mongo-shell (id is weggelaten om ruimte te besparen)

> db.collection.find()
  { "name" : "Angela" }
  { "name" : "David", "lastname" : "" }
  { "name" : "Kyle",  "lastname" : "Test" }
  { "name" : "John",  "lastname" : null }

> db.collection.find({"lastname" : {"$exists" : true, "$ne" : ""}})
  { "name" : "Kyle", "lastname" : "Test" }
  { "name" : "John",  "lastname" : null }

Als je ook overeenkomsten tegen null-waarden wilt filteren, moet je de criteria als volgt aanpassen (we kunnen $exists ook verwijderen als "$ne":null zorgt hiervoor)

> db.collection.find({$and:[{"lastname": {"$ne": null}}, {"lastname": {"$ne": ""}}]})
  { "name" : "Kyle", "lastname" : "Test" }


  1. Redis-cluster/taakverdeling

  2. Kan geen verbinding maken met mongoDB in docker-container

  3. MongoDB-replicaset met eenvoudige wachtwoordverificatie

  4. Ondersteunt MongoDB drijvende-kommatypen?