回答:
設定されていないときにsent_atフィールドが存在しない場合:
db.emails.count({sent_at: {$exists: false}})
そこにnullがある場合、またはまったくない場合:
db.emails.count({sent_at: null})
sent_at値が定義されているドキュメントのみをカウントする場合null(sent_at未設定のドキュメントはカウントしない):
db.emails.count({sent_at: { $type: 10 }})
findプレーンnullで使用すると0.0asのような値を解釈 しnull、このソリューションでこれを回避するため、賛成です
これを試すこともできます:
db.emails.find($and:[{sent_at:{$exists:true},'sent_at':null}]).count()