2010-08-05 2 views
1

Пожалуйста, обратитесь к этому вопросу database-structure-for-tree-data-structureКак сформировать древовидную структуру из таблиц DB2?

Возможно ли это в базе данных DB2? Я знаю, что это возможно в Oracle с использованием START WITH и CONNECT BY, у меня нет идеи в DB2, возможно ли достичь этого в DB2?

Спасибо!

ответ

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; 
Смежные вопросы