db2递归查询
在db2可以使用sql语句来进行递归查询,就是使用with语句

1.先建一个树形表:

DB2的递归查询_分享create table tst (
DB2的递归查询_分享id  integer,
DB2的递归查询_分享parentId int,
DB2的递归查询_分享name varchar(20))

2.插入数据
DB2的递归查询_分享insert into tst values 
DB2的递归查询_分享(1,0,'a'),
DB2的递归查询_分享(2,0,'b'),
DB2的递归查询_分享(3,1,'c'),
DB2的递归查询_分享(4,1,'d'),
DB2的递归查询_分享(5,4,'d'),
DB2的递归查询_分享(6,5,'d')
3.使用递归查询
DB2的递归查询_分享with rpl (id,parentId,name) as 
DB2的递归查询_分享(
DB2的递归查询_分享select id,parentId,name from tst  where parentId=1 
DB2的递归查询_分享union all 
DB2的递归查询_分享select  child.id,child.parentId,child.name from rpl parent, tst child where parent.id=child.parentId
DB2的递归查询_分享)
DB2的递归查询_分享select * from rpl

这个语句在在db2 7中就有了,在sql2005中才出现.