如何从DB2表格形成树结构?

时间:2010-08-05 12:00:15

标签: sql database-design tree db2

请参阅此问题database-structure-for-tree-data-structure

这在DB2数据库中是否可行?我知道在Oracle中使用START WITH和CONNECT BY是可能的,我在DB2中没有任何想法,是否有可能在DB2中实现这一点?

谢谢!

1 个答案:

答案 0 :(得分:1)

DB2是可行的,here是一个供参考的链接。

基本上,您使用WITH语法。从链接中获取,假设我们有这个表:

 CREATE TABLE emp(empid  INTEGER NOT NULL PRIMARY KEY,
                    name   VARCHAR(10),
                    salary DECIMAL(9, 2),
                    mgrid  INTEGER);

我们可以使用此查询:

WITH n(level, empid, name) AS 
          (SELECT 1, empid, name 
             FROM emp
             WHERE name = 'Goyal'
           UNION ALL
           SELECT n.level + 1, nplus1.empid, nplus1.name 
             FROM emp as nplus1, n
             WHERE n.empid = nplus1.mgrid)
SELECT level, name FROM n;