当前位置: 首页 > news >正文

沈阳外贸网站建设推蛙网络

沈阳外贸网站建设,推蛙网络,网站开发原型 图,网页设计与动态网站开发bool 查询是 Elasticsearch 中最常用的复合查询类型,允许将多个查询组合在一起。它通过逻辑操作符(如 must、should、must_not 和 filter)来构建复杂的查询条件,从而满足多条件匹配、逻辑与(AND)、或&#…

bool 查询是 Elasticsearch 中最常用的复合查询类型,允许将多个查询组合在一起。它通过逻辑操作符(如 mustshouldmust_notfilter)来构建复杂的查询条件,从而满足多条件匹配、逻辑与(AND)、或(OR)、非(NOT)的查询需求。

bool 查询主要由四个部分组成:

  • must:必须满足的条件(类似于 SQL 中的 AND)。
  • should:应该匹配的条件(类似于 SQL 中的 OR)。should 子句中的查询可以匹配也可以不匹配,但如果匹配,它会提高文档的相关性得分。
  • must_not:必须不匹配的条件(类似于 SQL 中的 NOT)。
  • filter:过滤条件,不影响文档的得分,只做精确的过滤判断。它对性能的影响较小,适合对大批量数据进行过滤。

1. 示例

GET /items/_search
{"query": {"bool": {"must": [{"match": {"name": "手机"}}],"should": [{"term": {"brand": { "value": "vivo" }}},{"term": {"brand": { "value": "小米" }}}],"must_not": [{"range": {"price": {"gte": 2500}}}],"filter": [{"range": {"price": {"lte": 1000}}}]}}
}

2. 解释

must(必须匹配)

  • 这里使用了一个 match 查询,要求文档中的 name 字段必须包含 "手机"。也就是说,只有 name 包含“手机”的文档才会被返回。

should(可选匹配)

  • 这里有两个 term 查询,分别要求 brand 字段为 "vivo""小米"。如果文档满足其中之一,将增加其相关性得分,但即使不匹配这些条件,文档也可能被返回(前提是 must 部分满足)。

must_not(必须不匹配)

  • 这里的 range 查询指定 price 字段的值必须小于 2500。也就是说,价格大于或等于 2500 的文档将被排除在外。

filter(过滤)

  • 使用 range 查询来筛选 price 小于或等于 1000 的文档。不同于 mustshouldfilter 不会影响文档的得分,只是对结果集进行精确的过滤,性能较好。

3. 使用

在idea中可以通过SearchRequest来构造查询条件。

// 构造查询条件
SearchRequest.Builder builder = new SearchRequest.Builder();builder.query(query -> query.bool(bool -> {// 必须匹配name为"手机"bool.must(must ->must.match(match ->match.field("name").query("手机")));// 添加 should 条件,匹配品牌(比如vivo或小米)bool.should(should -> should.term(term ->term.field("brand").value("vivo")));bool.should(should ->should.term(term ->term.field("brand").value("小米")));// 排除价格大于或等于2500的记录bool.mustNot(mustNot -> mustNot.range(range ->range.field("price").gte(2500)));// 过滤价格小于或等于1000的记录bool.filter(filter ->filter.range(range ->range.field("price").lte(1000)));return bool;
}));
http://www.hkea.cn/news/611827/

相关文章:

  • 安徽建设网官方网站优化分析
  • 网站根目录文件名游戏推广员是做什么的
  • 个体工商户怎么做网站西安网站seo技术
  • 报名网站制作2345网址导航官网下载安装
  • 图书购物网站开发总结百度发广告需要多少钱
  • 做网站 业务流程图站长统计性宝app
  • 长沙做网站大概多少钱万网域名注册教程
  • 成都网站建设网站产品推广计划书怎么写
  • 深圳个人网站建设大连网络推广公司哪家好
  • 建设工程教育appseo技术培训中心
  • 家教中介怎么利用网站来做的免费广告推广
  • wordpress仿制建设seo是什么平台
  • 商城网站建设分为几块seo臻系统
  • 网络营销对于个人而言有什么作用seo文章
  • 做书籍封皮的网站今日中国新闻
  • 东莞建设网站电工培训技术学校
  • 深圳聘请做网站人员成都排名seo公司
  • 网站备案之后东莞网站关键词优化公司
  • 多种专业网站建设潍坊网站排名提升
  • 网站投稿系统怎么做网站制作流程是什么
  • 交警网站建设整改百度推广怎么推广
  • 重庆网站建设哪里比较好呢网站下载
  • 网站运行速度慢的原因看b站二十四小时直播间
  • 电商网站开发服务全网营销骗局揭秘
  • 个人网站怎么做互联网营销师培训课程免费
  • 微信网站建设价格网站开发报价方案
  • wordpress utc时间慢8小时大连seo关键词排名
  • 中国建设承包商网站创建软件平台该怎么做
  • 中小企业网站建设费用海外推广服务
  • 企业名称的英文做网站名seo是怎么优化推广的