`
橄榄绿
  • 浏览: 272763 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

lucene 多条件查询

阅读更多

多条件查询

 一、不加时间范围

// 组合:生成查询条件
BooleanClause.Occur[] clauses = { BooleanClause.Occur.MUST,BooleanClause.Occur.MUST, BooleanClause.Occur.MUST };
//
根据地区,类型,还有关键字
String[] querys = { "地区", "类型","关键字" };  // 把搜索条件放到数组里

//相对应的索引

String[] fields = { "area", "indId", "key_name" };

// 接收搜索结果——(长度就是结果的数量)
ScoreDoc[] hits = searcher.search(query, searcher.maxDoc()).scoreDocs;

 

二、加时间范围

 BooleanQuery query = new BooleanQuery();

//条件一
QueryParser parser1 = new QueryParser("ex_area",new StandardAnalyzer());
query.add(parser1.parse(sex.getExArea()),BooleanClause.Occur.MUST);
//条件二
QueryParser parser2 = new QueryParser("ex_area",new StandardAnalyzer());
query.add(parser2.parse(sex.getExArea()),BooleanClause.Occur.MUST);
//条件三
QueryParser parser3 = new QueryParser("ex_area",new StandardAnalyzer());
query.add(parser3.parse(sex.getExArea()),BooleanClause.Occur.SHOULD);

//加入时间范围

RangeQuery q = new RangeQuery(new Term("ex_start", String
     .valueOf(sex.getExStart())), new Term("ex_end", String
     .valueOf(sex.getExEnd())), true);
   query.add(q,BooleanClause.Occur.SHOULD);

 

生成检索器

IndexSearcher searcher = new IndexSearcher(FSDirectory
     .getDirectory(new File("c:\\index")));

接收搜索结果——(长度就是结果的数量)
   ScoreDoc[] hits = searcher.search(query, searcher.maxDoc()).scoreDocs;

 

分享到:
评论
1 楼 lliiqiang 2014-07-24  
适当处理把条件放到查询中,有特殊情况确实需要特殊处理

相关推荐

    lucene 多字段查询+文字高亮显示

    NULL 博文链接:https://navylee.iteye.com/blog/740128

    Lucene时间区间搜索

    c#下实现Lucene时间区间查询匹配。主要还是对Lucene查循对像Query的实现

    lucene创建修改删除组合条件查询

    文件包含了lucene的创建、删除、修改、组合条件查询、类似mysql中like、in、or、以及时间范围条件查询

    Lucene 3.6 学习笔记

    (5) 多条件查询(BooleanQuery) 12 (6) 短语查询(PhraseQuery) 12 (7) 模糊查询(FuzzyQuery) 12 3.3 QueryParser 13 (1) 创建QueryParser 13 (2) 各种匹配方式 13 3.4 分页搜索 14 (1) 普通分页 14 (2) search...

    lucene实现全文搜索

    全文检索介绍 索引 分词 Lucene介绍 Lucene应用详解 索引器 检索器 条件查询 实用工具及高亮器 Lucene综合应用——仿搜索引擎

    我封装的搜索引擎之lucene篇

    NULL 博文链接:https://sunhao-java.iteye.com/blog/1874396

    lucene2.9.1完整DEMO及开发文档

    把用户输入的查询字符串封装成Lucene能够识别的Query对象。 3) Filter: 用来过虑搜索结果的对象。 4) TopDocs: 代表查询结果集信息对象。它有两个属性: a) totalHits: 查询命中数。 b) scoreDocs: 查询结果信息...

    基于Lucene的语段模糊匹配中文检索系统设计与实现 (2009年)

    为提高图书馆中文信息检索的精确度和有效性,设计了基于Lucene的语段模糊匹配中文检索系统。其采用了自然语言处理中的词语切分技术,使输入条件可以直接通过自然语言的方式提交,同时针对语段匹配的实际问题情境,设计了...

    Lucene 是一个基于 Java 的全文信息检索工具包,

    HTML 文档,PDF 文档进行索引的话你就首先需要把 HTML 文档和 PDF 文档转化成文本格式的,然后将转化后的内容交给 Lucene 进行索引,然后把创建好的索引文件保存到磁盘或者内存中,最后根据用户输入的查询条件在索引...

    java(结合lucene)版的公交搜索系统.zip

    用户可以通过输入关键词或线路编号,快速地查询到符合条件的公交线路信息,并获取详细的站点信息、运行时刻表等相关数据。系统具有良好的交互性和用户体验,为用户提供了方便快捷的公交出行信息查询服务。 ### 适用...

    lucene-wikipedia:基于Lucene的多句上下文检索器,用于开放域质量检查设置

    Lucene多句子上下文检索器这个基于Lucene的QA数据集索引可在查询条件下检索多句子上下文。 它是我们开放域质量检查管道中的主要组件,充当相关文本的检索器,供读者处理和输出相应查询的答案。索引编制对于每个数据...

    搜索链接java(结合lucene)版的公交搜索系统-javaso.zip

    此外,这个系统还可能包含用户界面,使得用户可以方便地输入查询条件,查看搜索结果。总的来说,这个公交搜索系统是一个实用且富有教育意义的项目,对于学习Java编程和搜索引擎技术有很大的帮助。重新回答||

    java(结合lucene)版的公交搜索系统的实现.rar

    公交搜索系统是一个基于Java语言结合Lucene搜索引擎的应用程序,旨在提供用户方便快捷地查询公交线路、站点及相关信息的服务。以下是该系统的主要实现描述: 数据收集与索引构建: 使用网络爬虫或者与公交管理部门...

    最新Lucene教程

    1、analysis对需要建立索引的...6)org.apache.1ucene.search检索管理,根据查询条件,检索得到结果。 7)org.apache.1ucene.store数据存储管理,主要包括一些底层的I/0操作。 8)org.apache.1ucene.util一些公用类。

    基于Lucene的搜索系统 同时使用Paoding进行中文分词

    列出符合条件的商品,由于商品数量之大,考虑到要用lucene来显示搜索功能,本文将通过一个简单的例子来告诉你lucene的实现和使用Paoding进行中文分词,当然这是个简单的例子不会包括商品的分类和规格相关属性的查询...

    Lucene+in+Action简体中文版1-4章

    在搜索过程中,这些项用于决定什么样的文档能匹配查询条件。例如,如果这句话“For example, if this sentence were indexed into a field”被索引到一个域(Field)中(假设域类型为Field.Text),相应产生的项可能...

    搜索链接java(结合lucene)版的公交搜索系统-javaso

    查询公交车路线:用户可以通过输入起点和终点站点,系统会根据数据库中存储的公交路线信息,返回符合条件的公交线路。这一功能可以帮助用户规划出行路线,选择最适合自己的公交线路。 查询公交车站点:用户输入公交...

    java(结合lucene)版的公交搜索系统-javaso.zip

    - 公交站点查询:用户可以查询某一公交站点的详细信息,包括该站点所在的公交线路、发车时间、到站时间等。 - 公交路线规划:用户可以规划出行路线,系统会自动计算公交路线和步行路线的时间和距离,提供最优出行...

    luxugang#Lucene-7.5.0#索引文件的读取(七)1

    为了便于介绍,使用了文章Automaton(二)中提供的例子:图1:结合图1的例子,获取满足查询条件(第79行代码)的所有term的过程可以简单的用一句话来描述

    搜索引擎模块

    本实例的高级图书查询功能不但可以查询图书的基本信息,还可以指定图书出版时间的范围、定价范围和页数范围来查询图书信息,另外还有更加详细的图书简介查询,它可以查询多个关键字词、完整字句、模糊字词和不包含的...

Global site tag (gtag.js) - Google Analytics