Mongodb包含具有以下对象的集合,
带有lastTrip
的对象:
{
"usage" : 0,
"lastMaintenanceDate" : NumberLong(1572600811104),
"lastTrip" : {
"direction" : "DOWN",
"startLevel" : 5
}
}
没有lastTrip
的对象:
{
"usage" : 0,
"lastMaintenanceDate" : NumberLong(1572600811104),
}
以下查询用于排序检索数据
Query one:
db.getCollection('some_collection').find({}).sort({"lastTrip.startLevel":1})
这仅返回具有字段lastTrip
的对象,即使collection包含不具有该字段的对象也是如此。
此问题导致我对以下查询的计数错误,
Query two:
db.getCollection('some_collection').find({}).sort({"lastTrip.startLevel":1}).count()
预期结果:
Query one > 20 documents
Query two > 20
实际结果:
Query one > 15 documents
Query two > 20
查询(对于查询一)获取没有字段lastTrip
的对象的正确方法是什么?