2010-02-25 52 views
3

我有一个与自身有一对多关系的表。每个记录可以有来自同一个表的n个孩子。例如SQL:递归地选择所有子记录的总和

create table folder 
ID: Number 20 PK 
PARENT_ID: Number 20 FK references folder.ID 
SIZE: NUMBER 20 
... 

给定一个ID,我要选择的文件夹中的所有记录的SUM(SIZE) 递归。目标数据库是MySql 5,但如果它的通用性足以在Oracle和MS-SQL中工作,那么它将会是很好的 。

我不知道树有多深,可能是1级,可能是50(或更多)

回答

1

一个解决办法是将列添加到表“topmost_parent”,并加入上。