Elasticsearch 查询嵌套字段,嵌套对象列表中限制只有匹配的才返回结果,怎么写 dsl

2020-11-24 21:15:05 +08:00
 YanY

存储的数据是

      {
          "id" : "xxxxx",
          "model" : "aaacc",
          "product" : "xxxxasdf",
          "idc" : "ccaa",
          "backup" : [
            {
              "id" : 123,
              "type" : "ssh-11",
              "part" : "ssh-12",
            },
            {
              "id" : 456,
              "type" : "ssh-22",
              "part" : "ssh-23",
            }
          ]
        }

返回匹配 backup.type:ssh-11 的结果,正常返回会把 backup 列表都带出来。但是希望之返回比例的子项

希望返回

	{
          "id" : "xxxxx",
          "model" : "aaacc",
          "product" : "xxxxasdf",
          "idc" : "ccaa",
          "backup" : [
            {
              "id" : 123,
              "type" : "ssh-11",
              "part" : "ssh-12",
            }
          ]
        }
703 次点击
所在节点    问与答
3 条回复
bxb100
2020-11-25 10:11:40 +08:00
内存中 filter 掉,或者查询自定义脚本过滤
YanY
2020-11-25 15:44:34 +08:00
@bxb100 这样就不能分页了
bxb100
2020-11-25 15:48:49 +08:00
@YanY #2 能啊, 这个是在获取结果之后做的事情, 这个是我处理的方式, 兴许别人有更好的方式处理

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/728858

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX