有沒有辦法將結果集限制爲最好的N結果?如果我使用Zend_Search_lucene::setResultSetLimit(10)
,根據我的排序聲明,我只會得到10個結果,而不是10個最好的結果。Zend_Search_Lucene限制結果集
0
A
回答
0
你的目的,你不能使用
Zend_Search_lucene::setResultSetLimit(N)
,因爲它給你只是第N個元素。
限制結果集
搜索中最耗費計算 部分得分 計算。對於大型結果集(幾十個 匹配),可能需要幾秒鐘的時間才能完成 秒。
在Zend_Search_Lucene給出 可能性限制結果集的大小與 getResultSetLimit()和 setResultSetLimit()的方法:
$currentResultSetLimit = Zend_Search_Lucene::getResultSetLimit();
Zend_Search_Lucene::setResultSetLimit($newLimit);
的默認值爲0表示 '沒有 限制'。
它沒有給出'最佳N'結果,但是隻有'最初的N'結果 。
如何搜索僅10個結果並將它們定義爲最佳結果?您必須搜索整個索引以確定最佳結果。
默認情況下,搜索結果按分數排序。看看文檔http://framework.zend.com/manual/1.11/en/zend.search.lucene.searching.html
順便說一句,無論你在使用zend lucene做什麼,請考慮使用其他搜索引擎,如Solr。我在很多項目中使用它,我建議使用它。管理速度更快,更好。要在zend框架項目中使用它,你必須使用solr php client。
相關問題
- 1. Zend_Search_Lucene - 如何將結果限制爲某種語言?
- 2. 限制結果
- 3. Query/GqlQuery .order()限制結果集?
- 4. 數據庫限制結果集
- 5. MapReduce的結果集跳過並限制
- 6. 使用@Query偏移限制結果集
- 7. 如何根據結果集中的值限制mysql結果?
- 8. 限制json結果
- 9. 限制SQL結果
- 10. SQLDev限制結果
- 11. SQL - 限制結果
- 12. 限制foreach結果
- 13. MYSQL限制結果
- 14. Mysql限制結果?
- 15. 限制Twilio結果
- 16. 限制JSON結果
- 17. jQuery限制結果
- 18. 限制結果,而不是組結果
- 19. nHibernate:限制映射集合的結果集
- 20. 限制結果在WordPress
- 21. SQL查詢 - 限制結果
- 22. 限制返回結果
- 23. Solr結果的限制?
- 24. Perl dbi:fetchrow_array限制結果:
- 25. php如何限制結果
- 26. PHP fetch_row限制結果
- 27. Elasticsearch結果限制問題
- 28. 沒有限制的結果
- 29. 限制在DataGrid的結果
- 30. massive-js限制結果列
是的,你必須搜索整個索引,但沒有理由一旦你整理索引就返回整個索引。例如,在標準SQL中,查詢'SELECT * FROM表ORDERBY字段ASC LIMIT 10'命令整個索引,但它只返回排序索引中的前10條記錄。 – 2011-04-05 17:34:54