具有文本索引的Spring Data MongoDB:matchingany和matchingphrase之间的差异

时间:2017-11-24 04:53:55

标签: spring mongodb spring-data-mongodb full-text-indexing

我正在使用MongoDB和Spring作为应用程序

我在我的收藏中使用了文字索引。

我发现了两种方法:

  • matchingany
  • matchingphrase

但我无法理解其中的差异。

请帮助我理解它们。

1 个答案:

答案 0 :(得分:0)

如果您希望匹配多个单词形成短语,请使用matchingPhrase,如果您希望匹配单词中的至少一个单词,请使用matchingAny

例如,给定这些文档(假设title属性是文本索引的):

{ "id": 1, "title": "The days of the week"}
{ "id": 2, "title": "Once a week"}
{ "id": 3, "title": "Once a month"}
  • matchingAny("Once")将匹配id = 2和id = 3
  • 的文档
  • matchingAny("month", "foo' , "bar")会将文档与id = 3
  • 匹配
  • matchingPhrase("The days of the week")将匹配带有id = 1
  • 的文档

更多详情in the docs