YanY
V2EX  ›  问与答

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

  •  
  •   YanY · Nov 24, 2020 · 1596 views
    This topic created in 2017 days ago, the information mentioned may be changed or developed.

    存储的数据是

          {
              "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",
                }
              ]
            }
    
    3 replies    2020-11-25 15:48:49 +08:00
    bxb100
        1
    bxb100  
       Nov 25, 2020 via Android
    内存中 filter 掉,或者查询自定义脚本过滤
    YanY
        2
    YanY  
    OP
       Nov 25, 2020
    @bxb100 这样就不能分页了
    bxb100
        3
    bxb100  
       Nov 25, 2020
    @YanY #2 能啊, 这个是在获取结果之后做的事情, 这个是我处理的方式, 兴许别人有更好的方式处理
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1229 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 17:36 · PVG 01:36 · LAX 10:36 · JFK 13:36
    ♥ Do have faith in what you're doing.