`

lucene布尔查询子句关系

阅读更多
Occur用于表示布尔查询子句关系的类,包括:
Occur.MUST,   Occur,MUST_NOT    Occur.SHOULD

1, must和must:取得连个查询子句的交集
2,must和must_not :包含must并且查询结果中不包含must_not的检索结果
3,should和should 表示“或”关系, 最终检索结果为所有检索子句的并集

使用注意:
1 must和should:此时should无意义,结果为must子句的检索结果
2 must_not和must_not :无意义,检索无结果
3 must_not 和should:此时should相当于must,结果同must和must_not一样
4 单独使用should:结果相当于must
5 单独使用must_not: 无意义,检索无结果
分享到:
评论

相关推荐

    lucene,lucene教程,lucene讲解

    BooleanClause用于表示布尔查询子句关系的类,包括: BooleanClause.Occur.MUST,BooleanClause.Occur.MUST_NOT,BooleanClause.Occur.SHOULD。 有以下6种组合: 1.MUST和MUST:取得连个查询子句的交集。 2.MUST和...

    Lucene4.X实战类baidu搜索的大型文档海量搜索系统-07.Lucene搜索实战1 共4页.pptx

    BooleanClause是Lucene中用于构造布尔查询的关键元素,它可以指定查询子句的关系,如必须(MUST)、禁止(MUST_NOT)和应该(SHOULD)。通过不同的组合,可以实现复杂的逻辑查询。例如,当两个查询子句都设置为MUST...

    深入解析:如何在 Elasticsearch 中执行布尔查询

    ### 深入解析:如何在 Elasticsearch 中执行布尔查询 在大数据时代,高效的数据管理和分析变得至关重要。Elasticsearch 作为一款基于 Lucene 构建的开源、分布式、RESTful 风格的搜索和分析引擎,凭借其卓越的性能...

    使用Lucene实现一个简单的布尔搜索功能

    在Lucene中,布尔搜索是一种重要的查询方式,它允许用户通过组合不同的搜索条件来表达复杂的查询逻辑。布尔查询基于布尔逻辑运算符,包括“AND”(所有条件都必须满足)、“OR”(满足任一条件即可)和“NOT”(排除...

    lucene-搜索过程源码解析-1-Weight生成.txt

    - 对每个子句中的查询进行重写,并将重写后的查询替换到原布尔查询中。 - **多术语查询(MultiTermQuery)重写**: - 多术语查询包括诸如前缀查询(PrefixQuery)、通配符查询(WildcardQuery)等。 - 根据术语...

    hive_elasticsearch_sql面试_大数据面试文档.rar

    4. **查询与过滤**:匹配查询、范围查询、术语查询、布尔查询等。 5. **聚合(Aggregations)**:用于统计分析,如最大值、最小值、平均值、桶聚合等。 6. **Elasticsearch集群**:节点、分片、复制集的配置和管理。...

    资源前后端分离式分布式微服务架构项目搜索服务讲义+源码+视频

    8. **使用DSL测试布尔查询**: 布尔查询 (`bool` 查询) 允许组合多个条件来构建复杂的查询逻辑,支持 `must`, `should`, 和 `must_not` 子句。 9. **测试过滤器**: Elasticsearch 支持多种过滤器,如 `term`, `...

    elasticsearch-queries

    布尔查询允许组合多个条件,包括 `must`(必须)、`should`(应该)、`must_not`(不能)子句。 ```python query = { "bool": { "must": [ {"match": {"field1": "value1"}}, {"match": {"field2": "value2"}} ...

Global site tag (gtag.js) - Google Analytics