2010-09-13 25 views
10

在Solr/Lucene中可以先按相關性排序,然後再按第二個屬性排序?Solr/Lucene是否可以先按相關性排序,然後再按第二個屬性排序?

據我可以告訴我是否設置了排序參數,它完全覆蓋了相關性,並按排序參數排序。

我該如何將結果按相關性排序,然後在兩個條目完全相同的情況下給出對該條目的點頭,即按字母順序排列。

如果它有什麼區別,我通過Ruby on Rails中的太陽黑子使用Solr。

+0

我想知道這是否會成功的,因爲相關度將大大改變。我想知道solr是否可以將相關性結果分成多個層次,然後按第二列對每個層次進行排序。 – lulalala 2012-08-21 07:22:28

回答

8

解決了我自己的問題!

可以傳遞關鍵字score以按相關性排序結果。

所以在Rails的黑子方面:

Article.search do 
    keywords params[:query] 
    order_by :score, :desc 
    order_by :name, :asc 
end 
+1

這可能是後期追趕,但我嘗試了同樣的解決方案,它不適合我。每當我使用分數進行排序時,它只使用第二個排序選項。如果我只使用分數,它工作正常。如果我結合其他兩個排序標準,那也是有效的。 還有什麼要做的嗎?你知道寶石版本的問題嗎? 欣賞幫助 – 2011-12-24 15:50:54