【发布时间】:2010-08-05 12:00:15
【问题描述】:
请参考这个问题database-structure-for-tree-data-structure
这在 DB2 数据库中可行吗?我知道在 Oracle 中使用 START WITH 和 CONNECT BY 是可能的,我在 DB2 中没有任何想法,是否可以在 DB2 中实现这一点?
谢谢!
【问题讨论】:
标签: sql database-design tree db2
请参考这个问题database-structure-for-tree-data-structure
这在 DB2 数据库中可行吗?我知道在 Oracle 中使用 START WITH 和 CONNECT BY 是可能的,我在 DB2 中没有任何想法,是否可以在 DB2 中实现这一点?
谢谢!
【问题讨论】:
标签: sql database-design tree db2
可以使用 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;
【讨论】: