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

Elasticsearch如何排序,分页以及高亮查询

目录

一、排序

二、分页查询

三、高亮查询


一、排序

ES中默认使用相关度分数实现排序,可以通过搜索语法定制化排序。

GET /索引/_search
{ "query": 搜索条件,"sort": [{"字段1":{"order":"asc"} },{ "字段2":{ "order":"desc" } }] 
}

由于ES对text类型字段数据会做分词处理,使用哪一个单词做排序都是不合理的,所以 ES中默认不允许对text类型的字段做排序。如果需要使用字符串做结果排序,可以使用 keyword类型的字段作为排序依据,因为keyword字段不做分词处理。

二、分页查询

GET /索引/_search
{ "query": 搜索条件,"from": 起始下标,"size": 查询记录数,一页多少条
}

三、高亮查询

在进行关键字搜索时,搜索出的内容中的关键字会显示不同的颜色,称之为高亮。

为什么在网页中关键字会显示不同的颜色,我们通过开发者工具查看网页源码:

我们可以在关键字左右加入标签字符串,数据传入前端即可完成高亮显示,ES可以对查询出的内容中关键字部分进行标签和样式的设置。

GET /索引/_search
{ "query":搜索条件,"highlight":{"fields": { "高亮显示的字段名": {// 返回高亮数据的最大长度"fragment_size":100,// 返回结果最多可以包含几段不连续的文字"number_of_fragments":5} },"pre_tags":["前缀"], "post_tags":["后缀"]} 
}

举例:

GET /students/_search
{"query": {"match": {"info":"成绩的"}},"highlight":{"fields": { "info": { "fragment_size":100,"number_of_fragments":5} },"pre_tags":["<em>"], "post_tags":["</em>"]}
}

http://www.lryc.cn/news/443245.html

相关文章:

  • Transformer预测 | 基于Transformer心率时间序列预测(tensorflow)
  • 科研绘图系列:R语言误差连线图(errobar linechart)
  • 智能BI项目第五期
  • Android-UI设计
  • docker desktop windows stop
  • Qt容器类控件——QGroupBox和QTabWidget
  • qt-creator-10.0.2之后版本的jom.exe构建和编译速度慢下来了
  • ESP32-WROOM-32 [创建AP站点-TCP服务端-数据收发]
  • 工业机器视觉中的常见需求
  • JavaWeb的Filter详解
  • 【iOS】KVC的学习
  • 影刀RPA实战:网页爬虫之药品数据
  • python禁止位置传参函数
  • java面试题第一弹
  • 住宅HTTP代理:提升网络隐私与安全的新选择
  • 字符串函数(2)
  • Linux--守护进程与会话
  • C++ 笔试常用算法模板
  • 李宏毅2023机器学习作业HW07解析和代码分享
  • ansible远程自动化运维、常用模块详解
  • 【若依框架】按时间查询数据的操作
  • 人工智能将来好就业吗?
  • JAVA SE 11
  • 【MySQ】在MySQL里with 的用法
  • 多源最短路径
  • 在 Mac 中设置环境变量
  • 记录一次ubuntu /mysql/redis/nginx等 系统安装
  • 大型语言模型 (LLM) 劫持攻击不断升级,导致每天损失超过 100,000 美元
  • Java 入门指南:JVM(Java虚拟机)垃圾回收机制 —— 垃圾收集器
  • nano 命令:文本编辑器