2010-08-05 3 views

Répondre

1

Est-ce possible avec DB2, here est un lien pour référence.

Fondamentalement, vous utilisez la syntaxe WITH. Tiré du lien, supposons que nous avons ce tableau:

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

Nous pouvons utiliser cette requête:

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; 
Questions connexes