【发布时间】:2019-10-12 01:48:26
【问题描述】:
我曾经使用双引号来实现“精确匹配”(这里并不意味着术语级别的精确匹配,“Nike Air”应该匹配“nike air”,但不应该匹配“Nike Air Force”) ES 版本(2.x、5.x):
GET some-index/_search
{
"query": {
"match": {
"brandName": "\"Nike Air\""
}
}
}
所以我只得到“Nike Air”而不是“Nike Air Force”。但是该查询在 ES 7 下不起作用 - 还返回了“Nike Air Force”。我怎样才能在 ES 7 下达到同样的效果?
这里是some-index的映射定义:
{
"some-index" : {
"mappings" : {
"properties" : {
"brandName" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
}
}
}
}
}
【问题讨论】:
-
你能显示
some-index的映射吗? -
@RussCam 肯定更新了。
标签: elasticsearch