es根据字段长度过滤_elasticsearch之查询结果过滤

前言

在未来,一篇文档可能有很多(是的,很多!不要被我们的示例这仨俩字段所迷惑)的字段,每次查询都默认给我们返回全部,在数据量很大的时候,是的,比如我只想查姑娘的手机号,你一并给我个喜好啊、三围什么的算什么?是要告诉洒家,hi,小老弟,要撩妹么?

所以,我们对结果做一些过滤,清清白白的告诉elasticsearch,小老弟,我只是查!水!表!

准备数据

PUT zhifou/doc/1

{

"name":"顾老二",

"age":30,

"from": "gu",

"desc": "皮肤黑、武器长、性格直",

"tags": ["黑", "长", "直"]

}

结果过滤:_source

现在,在所有的结果中,我只需要查看name和age两个属性,其他的不要怎么办?

GET zhifou/doc/_search

{

"query": {

"match": {

"name": "顾老二"

}

},

"_source": ["name", "age"]

}

如上例所示,在查询中,通过_source来控制仅返回name和age属性。

{

"took" : 8,

"timed_out" : false,

"_shards" : {

"total" : 5,

"successful" : 5,

"skipped" : 0,

"failed" : 0

},

"hits" : {

"total" : 1,

"max_score" : 0.8630463,

"hits" : [

{

"_index" : "zhifou",

"_type" : "doc",

"_id" : "1",

"_score" : 0.8630463,

"_source" : {

"name" : "顾老二",

"age" : 30

}

}

]

}

}

在数据量很大的时候,我们需要什么字段,就返回什么字段就好了,提高查询效率。整个三围啥的可low了,有本事上图!

欢迎斧正,that's all

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值