我有一个填充了Products的索引。每个产品都有价格领域。我想在类别页面上实现构面导航,我希望我的用户能够在价格范围内搜索产品。同时,我希望他们知道所选类别产品的最低和最高产品价格。据我所知,Azure Search不支持响应中的最小/最大值。所以我正在寻找一些解决方法。我认为我可以将我的价格字段标记为facetable并从facet结果获得最小值和最大值,但默认的facet结果计数为10,如果我理解正确从facet结果获得所有价格我需要将计数设置为Int.Max或者其他的东西。这听起来不太好听。
那么在特定类别中获得最低和最高产品价格的最佳解决方案是什么?
答案 0 :(得分:1)
获取最低和最高产品价格的更直接方法是在搜索请求中使用$ filter,$ orderBy和$ top。
例如,
https://[service name] .search.windows.net / indexes / products / docs?search = *& $ filter = productName eq' Toys'& $ orderBy = price asc& $顶部= 1。
您需要在响应中解析价格。
使用facet的方法会更昂贵,正如您所说,只能得到一个近似值,因为每个方面的边界都来自预先配置的范围。
Nate