Elasticsearch(ES) 查询指定返回字段
一则或许对你有用的小广告
欢迎加入小哈的星球 ,你将获得:专属的项目实战 / 1v1 提问 / Java 学习路线 / 学习打卡 / 每月赠书 / 社群讨论
- 新项目:《从零手撸:仿小红书(微服务架构)》 正在持续爆肝中,基于
Spring Cloud Alibaba + Spring Boot 3.x + JDK 17...
,点击查看项目介绍 ; - 《从零手撸:前后端分离博客项目(全栈开发)》 2 期已完结,演示链接: http://116.62.199.48/ ;
截止目前, 星球 内专栏累计输出 63w+ 字,讲解图 2808+ 张,还在持续爆肝中.. 后续还会上新更多项目,目标是将 Java 领域典型的项目都整一波,如秒杀系统, 在线商城, IM 即时通讯,权限管理,Spring Cloud Alibaba 微服务等等,已有 2200+ 小伙伴加入学习 ,欢迎点击围观
Elasticsearch(ES) API 允许在查询时指定返回字段,也就是仅仅返回部分字段。
按需索取,能够提高 Elasticsearch 的响应速度。
一、仅显示部分字段
入参格式,如下:
{
"_source": [
"commodity_id",
"commodity_name"
],
"query": {
"query_string": {
"query": "荣耀"
}
}
}
通过_source
字段来指定需要返回的字段, 这里我们仅显示 commodity_id
、commodity_name
字段。
通过 HEAD 插件,看下实际效果:
二、不显示原始字段
将 _source
设置为 false
, 可以不显示原始字段,部分特殊场景下会用到。
{
"_source": false,
"query": {
"query_string": {
"query": "荣耀"
}
}
}
三、包含或排除某些字段
我们可以同时指定需要显示的字段的,和需要排除显示的字段:
{
"_source": {
"include": [
"commodity_id",
"commodity_name"
],
"exclude": [
"picture_url"
]
},
"query": {
"query_string": {
"query": "双卡"
}
}
}
上面这段入参,就指定了只需要显示 commodity_id
、commodity_name
, 排除掉 picture_url
。