弹性搜索 - 从多种类型

时间:2018-03-07 11:00:14

标签: elasticsearch elassandra

我正在使用 elasticsearch ,我有两种类型来保存我的数据。

现在我需要使用单个查询从两种类型中检索数据。

请参阅我的用例

我有两种类型叫做基本和标记,我保存文件如下

myindex/basic
  

{“id”:“100”,“name”:“Tom”}

myindex/basic
  

{“id”:“101”,“name”:“John”

     

}

myindex/marks
  

{“id”:“100”,“mark”:“300”

     

}

myindex/marks
  

{“id”:“101”,“mark”:“500”}

现在我需要得到一个学生的名字和标记,他的身份证是100。

是否有可能得到这样的结果。

我开始知道这些类型的数据模型对nosql不好,但我需要它,因为这些记录是从RDBMS DB复制的。

请提出任何建议,并提前致谢。

1 个答案:

答案 0 :(得分:1)

您可以通过在网址

中列出来查询单个查询中的两种类型
POST myindex/basic,marks/_search

您还可以按ID

过滤所有这些内容
POST myindex/basic,marks/_search
{
  "query": {
    "bool": {
      "must": [
        {"term": {
          "id": {
            "value": 100
          }
        }}
      ]
    }
  }
}