DB2递归查询简介


  本文标签:DB2递归查询

  DB2递归查询又称为树查询,是DB2数据库中非常重要的查询方式,下面就为您详细介绍DB2递归查询相关的知识,供您参考学习  。

  【数据结构】

  process_id par_process_id fw_id
742482939    414358129      471
414358129    1707251033     470
1707251033    null          468

  【DB2递归查询父process_id】
with par (process_id,par_process_id) as
(
    select process_id,par_process_id from docm_process_ts a where fw_id=471【1】
union all
   select child.process_id,child.par_process_id from par ,docm_process_ts child where par.par_process_id=child.process_id 【2】
)
select process_id,par_process_id from par where par.par_process_id is null 【3】

  
【1】这条SQL语句是初始化,只执行一次,执行结果存在虚表中作为种子传递给【2】

  【2】递归从虚表par 跟 docm_process_ts 表进行条件查出数据

  【3】这条SQL语句是最终要查询的结果