如果一列的所有字段都为空,则 OpenSearch 不包括该字段,因此对该字段的排序失败
If all fields for a column are null, OpenSearch does not include that field, and so sorting on that field fails
在OpenSearch 中为数据添加排序配置时,我遇到了一种情况,即我要排序的数据字段只有空值。 OpenSearch return 一个错误 [query_shard_exception] Reason: No mapping found for [MY_NULL_FIELD] in order to sort on
。话虽这么说,如果我添加一个值,那么排序将按预期运行。有解决办法吗?
您可以在配置索引映射时定义null_value
properties。
PUT my-index-000001
{
"mappings": {
"properties": {
"status_code": {
"type": "keyword",
"null_value": "NULL"
}
}
}
}
配置空值时请考虑以下内容。
The null_value needs to be the same data type as the field. For
instance, a long field cannot have a string null_value.
如果字段值在所有文档中都是null
,则该字段可能不存在于映射中。在排序查询中使用 unmapped_type
应该有效。
{
"sort": [
{
"some_missing_field": {
"order": "asc",
"unmapped_type" : "long"
}
}
]
}
在OpenSearch 中为数据添加排序配置时,我遇到了一种情况,即我要排序的数据字段只有空值。 OpenSearch return 一个错误 [query_shard_exception] Reason: No mapping found for [MY_NULL_FIELD] in order to sort on
。话虽这么说,如果我添加一个值,那么排序将按预期运行。有解决办法吗?
您可以在配置索引映射时定义null_value
properties。
PUT my-index-000001
{
"mappings": {
"properties": {
"status_code": {
"type": "keyword",
"null_value": "NULL"
}
}
}
}
配置空值时请考虑以下内容。
The null_value needs to be the same data type as the field. For instance, a long field cannot have a string null_value.
如果字段值在所有文档中都是null
,则该字段可能不存在于映射中。在排序查询中使用 unmapped_type
应该有效。
{
"sort": [
{
"some_missing_field": {
"order": "asc",
"unmapped_type" : "long"
}
}
]
}