选择具有给定键的记录

我数据库里的记录是

{"_id":"1","fn":"sagar","ln":"Varpe"}


{"_id":"1","fn":"sag","score":"10"}


{"_id":"1","ln":"ln1","score":"10"}


{"_id":"1","ln":"ln2"}

我需要设计一个 MongoDB 查询来查找具有给定密钥的所有记录。

例如,如果我将 ln作为参数传递给查询,那么它应该返回其中 ln为键的所有记录。结果会是

{"_id":"1","fn":"sagar","ln":"Varpe"}


{"_id":"1","ln":"ln1","score":"10"}


{"_id":"1","ln":"ln2"}
73457 次浏览

要查找文档中是否存在键/字段,请使用 $存在操作符。

通过 MongoDB shell..。

db.things.find( { ln : { $exists : true } } );

我也有同样的问题

db.coll.find({"mykey":{'$exists': 1}})

对我有用

db.collection.find({ ln: { $exists: true} });

$size 运算符匹配任何数组和参数指定的元素数。例如:

db.collection.find({ ln: { $exists: true, $size: 0 } });

$size 不接受值的范围。若要基于具有不同数量元素的字段选择文档,请创建一个计数器字段,在向字段添加元素时该计数器字段将递增。