No mapping found for field in order to sort on [created_at]
此消息的实际含义是什么?该字段本身 created_at 存在,我应该重建索引吗?或者有没有办法解决这个错误
?
更新:
{
"query":{
"bool":{
"must":{
"multi_match":{
"query":"phone",
"fields":[
"text"
],
"minimum_should_match":"100%"
}
},
"filter":{
}
}
},
"sort":[
{
"created_at":{
"order":"desc"
}
}
]
}
最佳答案
我在日期字段中遇到了同样的问题。
问题是 created_at
字段未正确映射。
我们可以通过这两种方式解决
- map
created_at
具有正确映射的字段"type": "date"
- 我们可以指定在没有找到映射时要考虑的字段类型 在下面的排序部分中
{
"sort": [
{
"created_at": {
"order": "desc",
"unmapped_type": "date"
}
}
]
}
希望对你有帮助。
关于Elasticsearch 找不到用于排序字段的映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51100254/