从多个索引中获取数据,这些索引具有 spring-data elasticsearch 中常见的一个字段

问题描述

我在 Elasticsearch 中使用 spring-data 3.x。

以下是学生索引

{
"_index": "student","_type": "_doc","_id": "100","_version": 1,"_score": 1,"_source": {
"id": 100,"studentName": "aaa","fatherName": "bbb","mobileNumber": "111111","address": "#77"
}
}

以下是课程索引

{
"_index": "course","_id": "200","_source": {
"id": 200,"courseName": "course","duration": "2 Months","fee": "5000","description": "dd,ddd",**"studentId": 100**
}
}

我想实现搜索

  1. 按字符串“course”搜索,会返回匹配course.studentId =student.id的课程信息和学生信息。

  2. 按字符串“aaa”搜索。因为它不存在于课程中但存在于学生中,但它应该再次只寻找与课程匹配的学生。

从我的前端来看,我正在显示课程以及学生信息,并且有搜索字段,可以按任何内容搜索。所以我希望它先查找课程,然后查找匹配学生并返回数据课程和学生。

>

输出应该像

{
"_index": "course","student": {
"id": 100,"address": "#77"
}
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...