首页 > 解决方案 > 在 Elastic Search 中搜索并连接两个索引

问题描述

如何在弹性搜索中匹配查询后加入两个分离的索引?

例如,我有两个名为 all_products 和 SourceTable 的索引。我想根据 product_id 组合两个索引

{
    "_index": "all_products",
    "_type": "all_products",
    "_id": "123",
    "_score": 0.9808292,
    "_source": {
        "city": "CHENNAI",
        "product_id": "123",
        "name": "sam"
    }
},
{
    "_index": "sourcetable",
    "_type": "sourcetable",
    "_id": "232",
    "_score": 0.2876821,
    "_source": {
        "product_id": "123",
        "id": 232
    }
},

标签: javascriptelasticsearchaws-elasticsearch

解决方案


Elasticsearch 上没有 JOIN,但是你可以同时为同一个字段搜索两个或多个索引。

例如,您可以在字段中搜索两个索引product_id的值123,但结果不会是连接,它只会返回product_id = 123每个索引都有的文档。


推荐阅读