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

在elasticsearch文档中有多级字段好吗?

高山
2023-03-14

在elasticsearch文档中有多级字段好吗?

如果是,如何搜索带有嵌套字段的文档

我没有看到关于elasticsearch docshttps的文档://www.elastic.co/guide/en/elasticsearch/reference/current/index.html

多级I表示嵌套字段

{
 "account_number": 0,
    "balance": 16623,
    "firstname": "Bradshaw",
    "lastname": "Mckenzie",
    "age": 29,
    "gender": "F",
    "address": {
        "244 Columbus Place",
        "employer": "Euron",

        "email": {
            "personal":"bradshawmckenzie@euron.com",
            "work": "bradshawmckenzie@euron.com"
        }
        "city": "Hobucken",
        "state": "CO"
    }
}```

In about document address and email inner objects

共有1个答案

范福
2023-03-14

是的,有多个层次的对象是完全没问题的。

但是,您当前的JSON文档是无效的。我想应该更像这样。

{
    "account_number": 0,
    "balance": 16623,
    "firstname": "Bradshaw",
    "lastname": "Mckenzie",
    "age": 29,
    "gender": "F",
    "address": "244 Columbus Place",
    "employer": "Euron",
    "email": {
        "personal": "bradshawmckenzie@euron.com",
        "work": "bradshawmckenzie@euron.com"
    },
    "city": "Hobucken",
    "state": "CO"
}

要访问内部对象,可以使用点表示法。例如:

GET my-index/_search
{
  "query": {
    "match": {
      "email.personal": "bradshawmckenzie@euron.com"
    }
  }
}
 类似资料:
  • 我有数据: 我有以下疑问: 我想要出现的是: 如何修改搜索以设置字段排名/优先级?

  • 问题内容: 我需要在所有索引到Elasticsearch的文档中删除一个字段。我该怎么做。任何删除查询都可以帮助我实现这一点。 问题答案: @backtrack所说的是对的,但是在Elasticsearch中有一种非常方便的方法。Elasticsearch将抽象出删除的内部复杂性。您需要使用更新API来实现- 您可以在此处找到更多文档。 注意:从Elastic Search 6开始,您需要包括一个

  • 我想从ElasticSearch的结果文档中排除一个字段。我浏览了ElasticSearch.org的这个文档http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-request-fields.html但当我尝试时,这不起作用。我在SO上看到了同样的问题。有没有办法在Elasticsearch查询中

  • 如何获取搜索查询匹配的文档中的所有字段?关于<code>字段</code>的ES文档指出,使用<code>*</code>,可以获得所有字段:http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-request-fields.html 有了这个文档和这个查询,我得到了结果,但没有返回任何字段: 放置

  • 问题内容: Elasticsearch具有嵌套文档(出色)。我想用它来存储消息(顶级文档)及其作者(嵌套文档)。 由于一个作者可以拥有许多条消息-可以将一个版本的Author引用为多条消息的子级吗? 这样,如果您在一个地方更新Author数据,它将在所有引用它们的地方更新。 注意:这与以下内容有关:如何在Elasticsearch中或在Lucene级别进行联接-此处的答案也可以解决该问题。 问题答

  • 问题内容: 我正在执行类似下面的短语查询。它返回给我按相关性排序的突出显示的片段。自然,我希望用户单击一个片段,然后将文档滚动到相应的位置。但是,我在Elasticsearch中看不到任何方法来找出片段在原始文档中的位置。有任何想法吗? 问题答案: 在此期间,我们找不到合适的解决方案,并遭到了以下黑客攻击(对我们而言非常有效):在索引之前,我们用“ [index]”注释文本中的每个单词,以便“ 一