Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么“abc”术语的结果不包括在“ab”术语的结果中?_Java_Solr_Lucene - Fatal编程技术网

Java 为什么“abc”术语的结果不包括在“ab”术语的结果中?

Java 为什么“abc”术语的结果不包括在“ab”术语的结果中?,java,solr,lucene,Java,Solr,Lucene,我正在使用Solr suggester为我们的系统提供自动完成功能。 但问题是: 你输入ab,你会得到以ab开头的制造商。你输入abc,你会得到新的结果。 但是问题是abc的结果是ab结果的子集,那么为什么我不能在ab的结果中得到abc的结果呢 我试图做的是启动Lucene PrefixQuery: Term term = new Term("man", token); PrefixQuery prefixQuery = new PrefixQuery(term); 但这当然是

我正在使用Solr suggester为我们的系统提供自动完成功能。 但问题是:

你输入ab,你会得到以ab开头的制造商。你输入abc,你会得到新的结果。 但是问题是abc的结果是ab结果的子集,那么为什么我不能在ab的结果中得到abc的结果呢

我试图做的是启动Lucene PrefixQuery:

    Term term = new Term("man", token);
    PrefixQuery prefixQuery = new PrefixQuery(term);
但这当然是错误的,因为它将得到man属性以ab开头的文档。例如,我将得到10个man以ab11开头的文档

我需要的是一个不同值的列表

为了执行facetting而触发第二个Solr查询是疯狂的

我试图用Lucene方面模块实现这一点,但不幸的是,它与分类法和分类法一起工作


就个人而言,我对结果很满意,但很难说服管理层

您还没有提供任何有关建议者配置的信息,因此很难向您提供任何信息,但abc的建议者结果必然是这些ab的子集,这不是一个安全的假设。如果您只返回有限数量的结果,或由相似性阈值限制的结果,只返回更流行的结果等。abc的结果可能与ab上搜索的其他可用结果相比相关性显著降低,并且可能根本不会出现。