2015-05-16 43 views
0

我需要做一個僞隨機排序的獅身人面像查詢。爲了能夠獲得可重複的結果,我希望能夠提供我定義的隨機函數種子。但我似乎無法找到任何有關SphinxSE(MySQL引擎)的文檔。我在文檔中發現,您可以使用SphinxQL通過OPTION rand_seed來完成此操作。 SphinxSE中的等價物是什麼?到目前爲止,我只能找出sort=extended:@random;,它會自動播種。用SphinxSE手動設置種子進行隨機排序?

回答

0

在SphinxAPI有「黑客」把選擇通過setSelect有「註釋」 ......

$cl->setSelect("* /* OPTION rand_seed=123 */"); 

我不知道,但其可能它可能通過與SphinxSE工作?

WHERE query = 'test;sort=extended:@random;select=* /* OPTION rand_seed=123 */' 

(我不具有的活性與SphinxSE安裝測試)

+0

感謝您的建議。我試着運行該查詢,但似乎並沒有正在處理OPTION。我也嘗試設置max_matches = 1,它不會只返回一個匹配。現在,我使用表達式通過sort = expr:f(seed,id),根據種子和每個匹配的ID生成一個有點「隨機」的順序。也許我應該切換到SphinxQL,因爲它似乎提供了最大的靈活性...... – Hans