Sql 从数据库表获取与层次结构相关的值
我在DB2中有一个简单的表,其结构如下:Sql 从数据库表获取与层次结构相关的值,sql,db2,Sql,Db2,我在DB2中有一个简单的表,其结构如下: ID | Description | ParentID 01 | Cat | 101 02 | Salmon | 201 03 | Dog | 101 101 | Mammals | 301 201 | Fish | 201 301 | Vertebrates | 401 401 | Animals | 这描述了一个从叶子记录到动物的层次结构
ID | Description | ParentID
01 | Cat | 101
02 | Salmon | 201
03 | Dog | 101
101 | Mammals | 301
201 | Fish | 201
301 | Vertebrates | 401
401 | Animals |
这描述了一个从叶子记录到动物的层次结构
我怎样才能得到一个给定ID的所有描述,直到最上面的描述——其中没有任何parentID?例如,对于ID 01,我想得到:Cat哺乳类脊椎动物动物我想您需要一个connectby previor子句来启动递归:
Select Description
From table
Start with ID = 01
Connect By Prior ID = ParentID
您可以在应用程序中进行多次选择,直到获得空的ParentID。或者在您的SQLProblem中使用,我也不确定表名应该放什么。所以我做了…桌子。