全部文档
文档中心DeepModel功能DeepQL查询语句级联查询

级联查询

DeepQL查询语句可通过链接正向、反向级联查询多层对象的数据,无需进行额外关联

  • 通过链接级联查询,即通过多个.链接编码(作为链接路径)到达目标对象,以查询目标对象的属性/链接。例如:DeepModel中通常是业务数据指向主数据,可通过业务数据指向主数据的链接,在业务数据中冗余关联的主数据信息

  • 新建链接为正向链接,每条正向链接都有一条虚拟的反向链接。反向链接有标识<,且需要通过[is 对象编码]指定反向链接的目标对象。假设对象Feature中有一条正向链接.requirement指向对象Requirement,对象Requirement中就有一条对应的反向链接.<requirement[is Feature]指向对象Feature。例如:DeepModel中通常是行表指向头表,可通过行表指向头表链接的反向链接,在头表获取关联的行表数据进行聚合

级联查询例子1

查询最近创建的10个高优先级功能需求的相关信息,包括:需求的ID、名称、状态,需求负责人的名字、邮箱,组件的名称,以及关联的功能数量

select Requirement {
    req_id,
    req_name,
    req_status,
    req_owner_name := .req_owner.person_name,
    req_owner_email := .req_owner.system_user.email,
    component_name := .component.name,
    feature_count := count(.<requirement[is Feature])
}
filter .req_type = 'func' and .priority = 'high'
order by .created_time desc
limit 10

级联查询例子2

查询每个组件的需求数量、功能数量,组件显示中文名称

select Component {
    component_name := json_get(.name, 'zh-cn'),
    req_count := count(.<component[is Requirement]),
    feature_count := count(.<component[is Feature])
}

回到顶部

咨询热线

400-821-9199

我们使用 ChatGPT,基于文档中心的内容以及对话上下文回答您的问题。

ctrl+Enter to send