如何在LUCENE的两个日期之间索引和搜索文档

时间:2014-02-24 14:16:26

标签: java lucene

我正在研究JAVA, 假设我有一个包含字段的文档 “名称”和“日期”,我想索引字段日期并搜索所有文档 在date1和date2之间 谁有解决方案?

1 个答案:

答案 0 :(得分:1)

  1. 您必须将文档的日期添加到索引中:

    Date date = new Date();
    Document doc = new Document();
    doc.add(new Field("docDate", DateTools.timeToString(date, DateTools.Resolution.MINUTE), Field.Store.YES, Field.Index.NOT_ANALYZED));
    
  2. 现在您可以使用RangeQuery

    进行搜索
    Query query = new TermRangeQuery("docDate", DateTools.timeToString(dateFrom, DateTools.Resolution.MINUTE), DateTools.timeToString(dateTo, DateTools.Resolution.MINUTE), true, true);