【发布时间】:2019-01-16 23:35:19
【问题描述】:
我想添加一个字段 B,它应该包含一个包含字段 A 单词的数组。我想使用某种脚本将字段 A 的值分解为单词部分。
所以是这样的: 字段 A:“快速棕色狐狸” 字段 B:["The","Quick","Brown","Fox"]
我正在努力在谷歌上搜索如何在 ElasticSearch 5.6 中实现这一目标
【问题讨论】:
标签: elasticsearch mapping word elasticsearch-5
我想添加一个字段 B,它应该包含一个包含字段 A 单词的数组。我想使用某种脚本将字段 A 的值分解为单词部分。
所以是这样的: 字段 A:“快速棕色狐狸” 字段 B:["The","Quick","Brown","Fox"]
我正在努力在谷歌上搜索如何在 ElasticSearch 5.6 中实现这一目标
【问题讨论】:
标签: elasticsearch mapping word elasticsearch-5
您可以使用 update by query API 和一个拆分 fieldA 并将结果数组存储到 fieldB 的脚本来实现此目的:
POST test/_update_by_query
{
"script": {
"inline": "ctx._source.fieldB = /\\s+/.split(ctx._source.fieldA);",
"lang": "painless"
},
"query": {
"match_all": {}
}
}
你会得到这个:
{
"fieldA" : "The brown fox",
"fieldB" : [
"The",
"brown",
"fox"
]
}
【讨论】: