这个问题是关于为mongo数据库集合创建全文索引的。
该系列包含以下文档:
{
"_id" : ObjectId("5b44cd9dec97d60001efb75d"),
"action_id" : NumberLong(0),
"transaction_id" : "ad77575a8b4f52e477682e712b1cbd884299468db6a94d909f90c6961cea9b02",
"authorization" : [
{
"permission" : "active",
"actor" : "eosio"
}
],
"handler_account_name" : "eosio.token",
"name" : "transfer",
"data" : {
"from" : "eosio",
"to" : "b1",
"quantity" : "10.0000 EOS",
"memo" : "Never doubt that a small group of thoughtful, committed citizens can change the world; indeed, it's the only thing that ever has - eosacknowledgments.io"
},
"createdAt" : ISODate("2018-07-10T15:15:41.750Z")}
我正在尝试为“data”字段中的字符串字段创建文本索引。
db.Actions.ensureIndex({"$**":"text"})
但是根据mongo文档https://docs.mongodb.com/manual/core/index-text/,这将在整个文档的所有文本字段上创建索引,这是一种浪费。
我是否可以实现相同的索引行为,但仅限于“data”下的文本字段?
1条答案
按热度按时间gajydyqb1#
正如the official doc所说,
MongoDB提供了文本索引来支持对字符串内容的文本搜索查询。文本索引可以包括任何值为字符串或字符串元素数组的字段。
但是你没有字符串或字符串数组,而是一个json对象,实现你想要的方法是手动创建你的文本索引,包含你的数据子文档的每个字段: