我有以下情况: 我正在创建称为公司的索引,我正在其中创建多级关系
company
|
|---------------|
department supplier
|
employee
我创建了以下映射:
PUT /company
{
"mappings": {
"_doc":{
"properties":{
"join_field":{
"type":"join",
"relations":{
"company": ["supplier", "department"],
"department": "employee"
}
}
}
}
}
}
我可以使用父ID(公司ID)查询公司下的所有部门
GET /company/_doc/_search
{
"query":{
"parent_id":{
"type":"department",
"id":1
}
}
}
我还可以查询公司部门下的所有员工
GET /company/_doc/_search?routing=1
{
"query":{
"has_parent":{
"parent_type":"department",
"query":{
"term":{
"name.keyword":"Development"
}
}
}
}
}
最后,我的问题是,如何在单个查询中查询公司的所有部门和员工,而不是获取所有部门并使用这些部门来获取员工?
注意:我正在使用elastic search 7+
版本