我想使用通配符和不区分大小写的术语来查询elasticsearch 6中的字段。
目前,该字段已保存为关键字。
{
"mappings": {
"myType": {
"properties": {
"myObj": {
"properties": {
"name": {
"type": "keyword",
"normalizer": "lowercase_normalizer"
}
}
}
}
}
}
}
使用
在设置中定义规范化器{
"settings": {
"index": {
"analysis": {
"normalizer": {
"lowercase_normalizer": {
"filter": [
"lowercase"
],
"type": "custom",
"char_filter": []
}
}
}
}
}
}
这允许我使用
进行查询{
"query": {
"wildcard": {
"metaSite.name3": "Aa*" . //* or "aa*"
}
}
}
使用通配符和不区分大小写的术语搜索ElasticSearch 6的最佳做法是什么?