Azure搜索:价格范围 - 最小值和最大值计算

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Azure搜索:价格范围 - 最小值和最大值计算相关的知识,希望对你有一定的参考价值。

目前,我正在尝试Azure Search SDK。拥有强大的背景与lucenebobobrowse合作,Azure搜索非常精彩,并且具有开箱即用的两个框架的许多功能。

我唯一感到困惑的是获得数字小平面项的最小值和最大值。根据意图,我不想使用interval parametervalue lists

Azure Facet Navigation

我的要求是用计算出的最小值和最大值显示价格方面。以下网站在其方面列表中有这样一个方面:

Price Range

在我现有的桌面应用程序(.Net)中,我成功使用了BoboBrowse框架并实现了Custom-FacetHandler以获得所需的结果,如下图所示:

MultiValue Facet Handler Result

别介意这些图片中的方面值。这些只是工具的长度,高度和其他特征值。

这是我为演示目的构建一个文档的方法。有一个动态生成的价格字段。由于azure搜索需要每个索引的强固定模式。我在索引过程中更新架构。这非常有效。

Price Field

所以问题是如何通过azure搜索实现所需的功能?

在弹性搜索中,这样的问题可以通过使用Aggregations来解决。 Azure搜索中是否存在此功能?

答案

$filter参数支持lt(小于)和gt(大于)运算符。例如:$filter=price gt 0 and price lt < 100

示例代码:

string PriceFilter(double? fromPrice, double? toPrice)
{
   var filter = "$filter=";
   if(fromPrice.HasValue) 
          filter+="price gt " + fromPrice.Value.ToString() 
                + (toPrice.HasValue ? " and " : "");
   if(toPrice.HasValue) 
          filter+="price lt " + toPrice.Value.ToString();
   return filter;
}

参考:Build a filter for a range

以上是关于Azure搜索:价格范围 - 最小值和最大值计算的主要内容,如果未能解决你的问题,请参考以下文章

如何缩小具有已知最小值和最大值的数字范围

在 Vba 列的范围内查找最小值和最大值

如何将 jQuery UI 所有选定范围(不仅是最小值和最大值)加载到数组中

Pyspark - 从具有最小值和最大值范围的数组中获取值

在 SQL (Big Query) 中生成序列/范围/数组,其中最小值和最大值取自另一个表

是否可以根据其他表单的输入来更改 HTML5 范围滑块的最小值和最大值?