当前位置: 首页 > 知识库问答 >
问题:

如何在ElasticSearch中为术语查询设置case_insensitive?

臧烨烁
2023-03-14

在elasticsearch term查询文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-term-query.html中,声明有一个case_insensition字段

然而,我无法设置它。我可以设置boostvalue而没有问题,但不能设置case_insensition

GET movies/_search
{
  "query": {
    "term": {
      "overview": {
        "value" : "batman",
        "boost": 0.5,
        "case-insensitive": true
      }
    }
  }
}

当我运行时,我得到错误状态“[term]查询不支持[case_insensity]”

我在哪里搞错了,或者文档是错误的?

共有1个答案

益承颜
2023-03-14

看起来您使用的是不存在的低于ES7.10.0版本,即使您检查了ES7.9文档中case_insensition选项不存在。

请查找Github问题和公共关系的相关链接,其中增加了对术语查询不区分大小写的支持。

请参考在TermQuery中添加caseinsensition字段的差异。

 类似资料:
  • 问题内容: 我有两种日志消息: 第一个消息是已发送消息的类型,第二个消息是确认消息已传递的消息。 它们之间的区别是后缀,我已将其与“ id”分开并可以对其进行查询。 这些消息将按以下格式解析并存储在elasticsearch中: 我想找出哪些消息已成功发送,哪些没有成功。我是Elasticsearch的初学者,所以我真的很努力。 我目前正在尝试术语聚合,但是我所能实现的就是以下代码: 向我显示已发

  • 我试图获取缺少字段“topic.description”和匹配项“fundedunder.programme”:“abc”的文档。 映射: 我的查询如下所示:

  • 问题内容: 在ElasticSearch中是否有可能形成可以保留术语顺序的查询? 一个简单的例子是使用标准分析器为这些文档建立索引: 你知道要搜索 你知道搜索 知道为您搜寻 我可以查询,这将返回所有文档,包括第三个文档。 如果我只想检索按此特定顺序排列有术语的文档怎么办?我可以构成一个查询吗? 考虑到仅通过引用文本即可获得短语:(检索第一和第二文档)在我看来,应该有一种方法可以保留不相邻的多个术语

  • 问题内容: elasticsearch :6.1.2 我有一个通过JSON进行的输入查询,并且想使用高级Java API 使用该查询数据来构建搜索请求。 我试图通过以下方式构造构建器: 但这会产生: 由以下原因引起:org.elasticsearch.ElasticsearchException:org.elasticsearch.common.xcontent.NamedXContentRegi

  • 当使用https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-term-query.html描述的术语搜索时,我没有看到预期的结果 ElasticSearch版本为2.3.2:使用该版本创建数据: 此查询显示两条记录: 这个查询显示了一条记录,正如预期的那样: 但是使用不同的术语将不会产生记录: 不返回记录

  • 问题内容: 我有以下 匹配 查询字符串: 我想它的意思是,但实际上它能执行。 然后我尝试了 术语 查询字符串: 它执行,显示 术语 查询通过数组支持多个OR条件。 我很好奇为什么 匹配 查询不支持通过数组的 OR 条件?并且它不显示任何语法错误。 问题答案: 该查询仅支持要指定的单个字符串值。官方文档中没有明确指定它,但是如果您愿意阅读的源代码,则可以看到,在解析字段时,解析器将跳过标记来分隔数组