下面的查询适用于我的ES 1.3.4索引,但不在我的ES 2.3.0索引上,知道为什么停止工作或我如何修复它?我的索引在product和product_region之间具有父子关系。
它给出的错误是:
No field found for [product_region.mask] in mapping with types [product]
查询的相关部分是:
"query": {
"filtered": {
"query": {
"bool": {
"must": [
{
"bool": {
"should": [
{
"wildcard": {
"product_number": {
"value": "*999*"
}
}
},
{
"wildcard": {
"product_code": {
"value": "*999*"
}
}
}
]
}
}
]
}
},
"filter": {
"or": [
{
"has_child": {
"type": "product_region",
"query": {
"constant_score": {
"filter": {
"and": [
{
"missing": {
"field": "ref_val1"
}
},
{
"script": {
"script": "(doc['product_region.mask'].value & 65535) > 0"
}
},
{
"or": [
{
答案 0 :(得分:0)
事实证明我需要更改“script”:“(doc ['product_region.mask']。value& 65535)> 0”to“script”:“(doc ['mask']。value& ; 65535)> 0“