elasticsearch在数组中搜索匹配大小写

gfttwv5a  于 2021-06-13  发布在  ElasticSearch
关注(0)|答案(1)|浏览(349)

我想在数组的第一项中搜索匹配的大小写。例子
样本数据

{
    "id": "1",
    "comps": [
      {
        "city": "Henderson"
      },
      {
        "city": "abc"
      }
    ]
  },
  {
    "id": "2",
    "comps": [
      {
        "city": "new york"
      },
      {
        "city": "xyz"
      }
    ]
  }
]

我想查询comps数组中的第一个项目city,结果是[“henderson”,“new york”],并且我可以进一步匹配大小写,如[“new york”]中的%york%results
我试过这个

query: {
 {
      match: { city: 'york' }
 }
}
hc2pp10m

hc2pp10m1#

看起来您正在寻找中缀或子字符串匹配,您需要更改文档标记和搜索的方式。请参考n-gram标记器,它可以服务于您的用例,将根据您的用例添加一个工作示例。

相关问题