为什么基本表达式为true == true的查询不返回任何文档?

时间:2019-10-23 19:25:23

标签: mongodb

此查询为什么不返回任何文档?

db.records.find({ true: true })

MQL中不允许使用基本表达式吗?

2 个答案:

答案 0 :(得分:1)

基本的mongo查询是关于对象匹配的。您的{ true: true }查询将找到“ true”字段为true的文档。

如果要表达等效,请签出$expr

db.records.find({ $expr: { $eq: [true , true] } })

答案 1 :(得分:0)

您可以尝试这样的事情:

db.records.find( { "_id": { "$ne": "" } } )

此查询搜索记录集合,并返回所有id字段不是空白字符串的记录。这将返回集合中的所有记录,因为在大多数情况下,id字段是自动生成的,因此永远不会为空。