2016-11-16 141 views
0

我有一個填充產品的索引。每個產品都有價格區域。我想在分類頁面上實施分面導航,我希望我的用戶能夠在價格範圍內搜索產品。同時,我希望他們知道所選類別中產品的最低和最高產品價格。據我所知,Azure搜索不支持響應中的最小/最大值。所以我正在尋找一些解決辦法。我認爲我可以將我的價格字段標記爲facetable,並從facet結果中獲取最小值和最大值,但默認的facet結果數爲10,如果我正確理解從facet結果得到所有價格,我需要將count設置爲Int.Max或者其他的東西。這聽起來不錯。Azure搜索最小值最大值

那麼什麼是在特定類別中獲得最低和最高產品價格的最佳解決方案?

回答

1

獲得最小和最大產品價格的更直接方法是在搜索請求中使用$ filter,$ orderBy和$ top。

例如,

https://[service名稱] .search.windows.net /索引/產品/文檔?搜索= * & $過濾=產品名稱EQ '玩具' & $ ORDERBY =價格ASC & $頂部= 1 。

您將需要解析響應中的價格。

使用facet的方法會更加昂貴,並且如您所說,只能得到近似值,因爲每個方面的邊界都來自預先配置的範圍。

Nate