我将 Apache Solr 8 与产品一起用作文档。每个文档都包含我想要提升的最近 X 天内的销售额,以及标题和其他字段。
假设productA已售出5次,我想用score+10来提升它;一个产品B已经卖出了50次,我想把分数提高30。
我尝试使用看起来像(edismax 查询解析器)的 boostFunction
q=Coffee&qf=title&bf=if(lt(sales,5),10,if(lt(sales,50),30))
Solr 现在返回与我的“Coffee”-Query 无关但仅与 boost 函数匹配的文档。甚至有得分为“0”的结果。例如
Rank;Score;Sales;Title
1;58.53;55;Coffee big
2;38.11;50;Coffee
3;30;55;Tea
有什么想法可以摆脱那些“唯一的增强功能”匹配吗?