我注意到$eq
发布了一个新的运算符MongoDB 3.0
,但我不明白它的目的。例如,这两个查询完全相同:
db.users.find({age:21})
和
db.users.find({age:{$eq:21}})
有人知道为什么这是必要的吗?
问题是当您拥有某种查询生成器时,您必须以不同于比较的方式处理相等性,因此
{ a : { $gt : 3 } }
{ a : { $lt : 3 } }
但
{ a : 3 }
为了平等,这看起来完全不同。$not
正如JohnnyHK所指出的,这同样适用于的组成。另外,与进行比较$eq
可以使您不必$
-escape用户提供的字符串。因此,人们要求在语法上更接近的替代方案得以实施。吉拉票包含一个较长的讨论,其中提到了所有这些要点。
如果实现了这样的功能$eq
,则在聚合框架中比较两个字段也可能更有意义。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句