是否支持在集合like
的rlike
属性值中搜索字符串?
集合是否需要为此工作定义文本类型索引?不幸的是,我无法为该属性创建文本索引。有 1 亿个文档和文本索引杀死了性能(MongoDB 在单节点上)。
如果没有文本索引这是不可行的,那对我来说很好。我会寻找替代品。
给出以下集合:
Message {
'payload' : 'XML or JSON string'
//few other properties
}
在 grails 中,我创建了一个 Criteria 来返回一个文档列表,其中包含有效负载中的特定字符串
Message.list {
projections {
like('payload' : searchString)
}
}
我也试过用rlike('payload' : ".*${searchString}.*")
。它没有给我带来任何文档。
注意:当我在 Mongo shell 上触发本机查询时,我能够获取文档。
db.Message.find({payload : { $regex : ".*My search string.*" }}).pretty()