如何使用 $exists: false 条件创建部分索引?

lok*_*oki 5 mongodb mongodb-query

我想创建这个部分索引:

db.mycollection.createIndex( 
  {"firstname": 1, "lastname": 1}, 
  { partialFilterExpression: { "status": {$exists: false}, "quantity": { $lt: -1 } } } ); 
Run Code Online (Sandbox Code Playgroud)

但我收到此错误:

部分索引中不支持的表达式:$not\n 状态存在\n"

我能怎么做 ?

小智 5

如果该status字段没有空值,您可以使用

{ partialFilterExpression: { "status": null, "quantity": { $lt: -1 } } } ); 
Run Code Online (Sandbox Code Playgroud)


Joe*_*Joe 4

不幸的是,你没有。

该功能请求已经存在很长一段时间了:https://jira.mongodb.org/browse/SERVER-17853

希望他们很快就能做到这一点,这将非常有用。