javascript - 在 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
}
},
解决方案
Elasticsearch 上没有 JOIN,但是你可以同时为同一个字段搜索两个或多个索引。
例如,您可以在字段中搜索两个索引product_id
的值123
,但结果不会是连接,它只会返回product_id = 123
每个索引都有的文档。
推荐阅读
- objective-c - Objective-C NSIndexSet / NSArray - 使用标准开发从集合中选择“最佳”索引
- sql - SQL Server:从多个表中选择
- javascript - 没有括号的Javascript调用函数
- java - 多表 JPA 规范
- datetime - Kubernetes 中 Pod 和主机之间的日期和时间同步
- excel - ODBC 查询 - 刷新数据下推最后一行数据
- google-colaboratory - xgboost 是否将 TPU 用于“gpu-hist”(如果 TPU 可用)?
- javascript - 根据与对象中的多个字段进行比较的关键字返回搜索结果的最有效方法
- java - 如何检查查询过程是否在firebase中完成
- python - 为什么只有一个值写入字典?