我正在使用Apache Solr在我的应用程序中实现搜索功能。我有一列定义了应用程序针对不同供应商提供的服务的价格。例如:有一个服务XYZ。并且有许多提供商以不同的价格提供XYZ服务。
-------------------------------------------------------------
Service Name Provider Name City price
------------------------------------------------------------
XYZ A ABC $10
XYZ B ABC $12
XYZ C DEF $14
------------------------------------------------------------
现在我需要通过根据城市过滤记录来计算价格中位数。假设用户在ABC城市搜索XYZ服务。它必须返回前两行,中位数为10美元和12美元。我在谷歌上搜索了Solr的中值函数。但没有任何成果。
任何建议都将受到赞赏。
答案 0 :(得分:1)
如果您的索引未分发,Solr Stats组件可以执行此操作。请求百分位数50:https://cwiki.apache.org/confluence/display/solr/The+Stats+Component
答案 1 :(得分:0)
Solr不提供就绪功能。但您可以尝试为自己编写自定义函数查询。
以下是可以帮助您实现相同目标的链接。