【问题标题】:Elasticsearch - Finding all entities with a nested idElasticsearch - 查找具有嵌套 id 的所有实体
【发布时间】:2021-11-22 14:27:55
【问题描述】:

我正在尝试查询嵌套项,但我不确定如何制定查询,尤其是使用 javascript bodybuilder。下面是the mapping

我正在尝试获取所有具有“异常”ID 的活动项目 (isActive: true)。我不确定如何查询 ElasticSearch。 在 SQL 中,我可以做一些事情,比如包含或拥有。我在后端使用 Node.js bodybuilder 来查询 elasticsearch。

【问题讨论】:

  • 你能检查一下映射吗?我认为映射json有问题。
  • @sabasafavi 修复了 json 映射。不确定如何查询 ElasticSearch 中的嵌套异常 id 和“isActive”字段。想要返回索引中具有特定异常 id 的所有项目
  • 异常必须是嵌套类型,但是在映射json中不是嵌套的,"anomalies": { "type":"nested", "properties": {"affects": { "type": "text" },....

标签: node.js elasticsearch bodybuilder.js


【解决方案1】:

根据映射,isActive 和 id 与“异常”对象相关。试试这个查询

{
    "query": {
        "nested": {
            "query": {
                "bool": {
                    "filter": [
                        {
                            "match": {
                                "anomalies.isActive": {
                                    "query": "true"
                                }
                            }
                        },
                        {
                            "match": {
                                "anomalies.id": {
                                    "query": "any_value"
                                }
                            }
                        }
                    ],
                    "adjust_pure_negative": true,
                    "boost": 1.0
                }
            },
            "path": "anomalies",
            "ignore_unmapped": false,
            "score_mode": "none",
            "boost": 1.0
        }
    }
}
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-15
    • 1970-01-01
    • 2022-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多