繁体   English   中英

使用mongoose在mongo中查询集合上的命名文本索引

[英]Query a named text index on a collection in mongo using mongoose

我正在通过带有自定义名称的mongoose在我的集合上创建文本索引,但我不确定如何查询该特定文本索引,或者您是否甚至可以在单个集合上拥有多个文本索引。

我已经指定了一个索引:

mongoose.connection.collections['jobs'].ensureIndex({ title: 'text', description: 'text' }, { name: 'customtext' });

我可以用一般的$text查询来搜索它:

var query = {
  "$text": {
    "$search": "bleep bloop"
  }
}
Model.find(query, function(error, results) {});

但有没有办法添加多个不同的文本索引(针对不同的搜索)和自定义名称查询?

MongoDB集合最多可以包含一个文本索引 您无法为单个集合定义多个文本索引。

您可以使用不同名称的许多文本索引,但索引的名称主要用于删除索引。

例:

db.collection.ensureIndex(
   { content: "text"},
   { name: "TextIndex"}
)
db.collection.dropIndex("TextIndex")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM