mongoDBの抽出条件に特定のkeyの有無を指定する

はじめに

mongo dbはスキーマレスなため、

既存のcollectionに対して自由にkeyを追加できる

 

当然、document毎に特定のkeyがあったりなかったり

という状態が普通に起こりうる

 

今回はkeyの有無を抽出条件にしていする方法を学ぶ

準備

既存のcollenctionに対して、新規のkeyを持つ

documentを追加する(ここではageを追加したdocumentを作成)

 

 

 

説明

抽出条件を指定
ageの値を持っていないデータを抽出してみる

{ age: { $exists: true } }

逆に持っていないものを指定するときは

{ age: { $exists: false } }

とすれば良い

まとめ

mongo DBはスキーマレスなため自由にkeyを追加できる

抽出条件にkeyの有無を指定するときは、{ field: {$exists: true (or false) } }を使う