solr查询:n个单词中的x个匹配

solr query: x out of n words matched

我应该有 4 个单词(为了举例起见,我们称它们为 a,b,cd),我想在 solr 中搜索以匹配 3 其中。 我可以编写一个包含所有排列的查询,如下所示:

(a AND b AND c)OR(a AND b AND d)OR(b AND c and d)

这将起作用并将文档与这 4 个词中的 3 个相匹配。

但是当我有 10 个单词并且需要匹配其中的 3 个时,事情就变得一团糟了。 所需的排列数量呈指数增长。

很明显,由于查询的复杂性,solr 崩溃了(响应速度太慢)

我在整个 Internet 上进行了搜索,以了解是否有一个特殊的命令可以用于此类操作。我找不到任何东西。我只是想知道是否有任何技巧可以完成这样的事情。

查看 eDisMax 解析器的 mm 参数。