Elasticsearch查询字典字段的存在

时间:2018-02-08 16:35:49

标签: javascript elasticsearch

我在Elasticsearch中存在查询问题。 我的docuemnts有一个内部对象(一个字典映射字符串浮动值)。

我想查询内部字典中是否存在特定字符串,并使用映射到该字符串的float值对结果进行加权。

目前我正在尝试

  "query": {
     "nested": {
       "path": "words",
       "query": {
         "function_score": {
           "query": {
             "exists": {
               "field": term
             }
           },
           "functions": [
             {
               "field_value_factor": {
                 "field": term
               }
             }
           ]
         }
       }
     }
  },  

words是字典,term是我要找的字符串。

但这不起作用

{"type":"illegal_state_exception","reason":"[nested] nested object under path [words] is not of nested type"}}}]},"status":400}',

有谁知道为什么?

编辑:

Elasticsearch版本:oss 6.1.3。

至于结构,它更难,但它类似于:

Doc:
  _id: 1
  words:
    string1: value1
    string2: value2

Edit2:修正了括号问题,现在错误更有意义,但我仍然不知道为什么它不起作用

0 个答案:

没有答案