首页 文章

查询lucene搜索结果

提问于
浏览
1

我有一个包含以下字段的新闻存储( Headers ,正文,新闻日期)
我需要一个符合以下条件的最佳查询

1) Headers 更重要但不到日期
2)日期应与当前日期进行比较,如果文件的日期接近当前日期则更有 Value (注意:这并不意味着在新闻日期排序下降导致可能导致其 Headers 及其正文的结果更相关,但它更旧)这只是搜索的另一个因素,我认为它需要自定义排序
3)身体已排在第三位

有解决方案吗

2 回答

  • 1

    您应该在架构中使用Boosting,而不是非常复杂的查询 .

  • 0

    就像@Guillaume所说,你需要使用助推器 .

    您可以在2个位置使用:一个在索引时(提升 Headers 和正文),第二个(日期字段)在查询时使用 . 日期字段是查询时间,因为它是动态的

    • 索引时间提升将如下:

    Field fld = new Field(....); fld.setBoost(10f); //更重要10倍,默认值为1

    • 查询时间提升将获得日期差异(例如以天或分钟为单位)并反向应用提升,即差异越大 . 提升越小 .

相关问题