我有2列的表格:ID, ParentID
T-SQL:得到一个单列的父母,子女,孙子女... N孩子
我想打一个新表/查看每一行包括所有孩子们在各级一定父母......
例如:
ParentID Level_1 Level_2 Level_3 ... Level_n
这意味着的parentID是LEVEL_1的父母也就是2级的母公司是level_3的家长等...
我需要没有递归所以没有机会堆栈溢出做...
在T-SQL,有一个名为@@rowcount
函数返回我在最后得到了行选择,所以也许我可以用它里面while loop or something ...
问题是我该如何知道在开始时要构建多少列? 任何想法如何获得这个挑战?
这是一次性工作,还是需要重复执行? – 2011-03-28 12:59:28
不能使用递归REALLY co mplicates this ... – JNK 2011-03-28 13:17:18
看向前看到这样做没有递归,没有PIVOT。我相信需要递归来描述关系图,我也相信PIVOT已经出来了,因为您需要知道构建PIVOT查询需要多少级别,正如@pcofre答案。 – 2011-03-28 13:32:49