提问人:Ramesh Papaganti 提问时间:7/19/2018 最后编辑:Ramesh Papaganti 更新时间:7/19/2018 访问量:42
== 检查两个字段 Elasticsearch
== check on two fields elasticsearch
问:
我有这样的场景,需要检查两个字段是否相等。 假设我有一个带有映射的索引my_index
"field_one": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
},
"regexkeyword": {
"type": "keyword",
"normalizer": "lowercase_normalizer"
}
},
"analyzer": "simple"
},
"field_two": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
},
"regexkeyword": {
"type": "keyword",
"normalizer": "lowercase_normalizer"
}
},
"analyzer": "simple"
}
在这里,我需要编写一个查询以通过匹配获取数据,这是我尝试过的field_one
field_two
{
"script_fields": {
"adas": {
"script": {
"inline": "'field_one.keyword' == 'field_two.keyword'",
"lang": "painless"
}
}
}
注:弹性版本:5.5.3
答:
0赞
Pierre Mallet
7/19/2018
#1
我认为语法是,但我在 ES 中没有实例.X 来测试它
{
"script_fields": {
"adas": {
"script": {
"inline": "doc['field_one.keyword'].value == doc['field_two.keyword'].value",
"lang": "painless"
}
}
}
评论
0赞
Ramesh Papaganti
7/20/2018
两种语法都给出了相同的结果,但不是预期的数据。
评论