带有关键字的TermQuery不返回结果

问题描述 投票:0回答:1

我正在尝试对关键字字段执行术语查询,但没有收到任何结果。如果我删除关键字,查询将返回预期结果。

GET myindex/_search
{
  "query": {
    "term": {
      "creatorId.keyword": "c29dae46-23bd-4349-b989-f6bb803b1dd8"
    }
  }
}

这是该特定字段的索引映射下显示的映射:

  "creatorId": {
    "type": "keyword"
  }

我想知道为什么会发生这种情况以及如何使关键字在这里起作用。

elasticsearch kibana exact-match term-query
1个回答
0
投票

您已经定义了您的字段是关键字类型。这样您就不需要在查询中明确说明。就用纯场吧。 如果字段像这样映射,您只需使用 .keyword 即可:

"mappings": {
      "properties": {
        "creatorId": {
          "type": "text",
          "fields": {
            "keyword": {
              "type": "keyword",
              "ignore_above": 256
            }
          }
        }
      }
    }
© www.soinside.com 2019 - 2024. All rights reserved.