【发布时间】:2020-08-17 16:54:23
【问题描述】:
我在带有字段的弹性搜索中有一条 json 记录
"streetName": "5 Street",
"name": ["Shivam Apartments"]
我尝试了以下查询,但如果我在查询中添加 streetName bool,它不会返回任何内容
{
"query": {
"bool": {
"must": [
{
"bool": {
"must": {
"match": {
"name": {
"query": "shivam apartments",
"minimum_should_match": "80%"
}
}
}
}
},
{
"bool": {
"must": {
"match": {
"streetName": {
"query": "5 street",
"minimum_should_match": "80%"
}
}
}
}
}
]
}
}
}
文档映射
{
"rabc_documents": {
"mappings": {
"properties": {
"name": {
"type": "text",
"analyzer": "autocomplete_analyzer",
"position_increment_gap": 0
},
"streetName": {
"type": "keyword"
}
}
}
}
}
【问题讨论】:
-
能否请您在描述中也添加文档映射?
-
我使用动态映射尝试了同样的方法,它对我有用。很有可能,您的映射被定义为使用您使用的查询无法搜索此特定文档。
-
@SahilGupta 我已经添加了文档映射
-
@Gibbs .) N-Gram 标记器 b.) 小写、asciifolding、修剪、撇号和停用词标记过滤器 c.) Html_strip 字符过滤器
-
@Gibbs 这会影响 streetName 字段条款吗?
标签: elasticsearch lucene