2017-04-24 21 views
2

我在我的電子商務網站上使用Azure搜索,現在我遇到了在搜索頁上分頁的問題。當我重新加載搜索頁面時,我可以獲得不同的產品訂單。所以,當我使用分頁功能時,我可以在不同的頁面上看到相同的產品,這非常重要。在搜索結果具有相同分數時在Azure搜索中進行尋呼

我開始研究什麼錯,我發現微軟的文檔此信息https://docs.microsoft.com/en-us/rest/api/searchservice/add-scoring-profiles-to-a-search-index#what-is-default-scoring

搜索分值可以在整個結果集進行重複。例如,對於 示例,您可能有10個項目的得分爲1.2,20個項目的得分爲1.0, 得分爲1.0,而20個項目的得分爲0.5。當多個匹配點 具有相同的搜索分數時,相同得分項目的排序不是定義爲 ,並且不穩定。再次運行查詢,您可能會看到 項目移位。給定兩個具有相同分數的項目, 不能保證哪一個先出現。

所以,如果我得到它正確的,我面臨這個問題,因爲產品具有相同的得分。

如何解決這個問題?

回答

2

你弄明白了!因爲你得到的產品有相同的分數,所以不能保證哪一個先出現。 爲了避免它在這個階段,您可以添加到您的$ orderby參數具有唯一值的字段,並以這種方式保證相同的順序。但是,這種方法不考慮評分。我們目前正在研究解決這個問題的方法。一旦解決方案可用,我們將更新此答案(此時的ETA是幾周,而不是幾個月)。