2014-01-16 45 views
0

我的場景基於.NET C#中的一個Web門戶,它使用Amazon CloudSearch顯示娛樂事件。這裏是我的searchURL:如何根據我的排名順序隨機化CloudSearch的結果

http://search-events-sz5bnsbiljweiirjdddbhagoj4.us-east-1.cloudsearch.amazonaws.com/2011-02-01/search?bq=startdate_unit:20140115..20140121&size=50&start=0&facet=categoryname,countyname,venuename,startdate_unit&return-fields=order%2Cscore%2Ccreateddate%2Cstartdate_unit%2Cstarttime%2Cshortdescription%2Csubtext%2Cvenuename_result%2Cimage&rank=-order,-score&results-type=xml&results-type=xml

如何使用rand()函數在我與階排列搜索,-score?

正如你所看到的,我已經設置了我的「排名=順序 - 分數」,其中「排序」是按日期或重複事件給出的不同類別的循環事件。 「分數」由我的前端應用程序給出,每個事件的完整性得分。

因爲我可以擁有數千條訂單= 1000和分數= 100的記錄,所以我希望讓所有記錄都有機會位於我搜索的頂部,從而隨機化CloudSearch的結果1000記錄的訂單= 1000,分數= 100或具有相同值的情況。

通過在我的排名上使用rand()可以解決這個問題,或者我可以使用什麼CloudSearch功能來解決此問題?

回答

1

誰可能關注。 我已經發現如何通過配置秩表達它由rand()函數來解決它:

&秩表達式1 = RAND()

然後,我用這個表達式作爲第三等級標準:

rank = -order,-score,expression1

相關問題