为每个父级创建表,列将是其子级

时间:2018-04-19 13:19:10

标签: sql-server

我有表包含父母和孩子的记录和子记录通过父ID列链接到他们的父母 我想要做的是抛出这个表层次结构并创建每个父表的表,其子表将是表的列 我可以去抛出这个表层次结构但我不知道如何创建每个父表的表? 我使用此查询来抛出表层次结构:

with parentsanditschilds(
parentidid,
childname,
childid,
parentname,
depth)
as
(
select 
ComplexType.ParentID,
ComplexType.Name,
ComplexType.ID,
ComplexType.Name,
0
from ComplexType
where ComplexType.ParentID is null

union all

select 
ComplexType.ParentID,
ComplexType.Name,
ComplexType.ID,
parentsanditschilds.childname,
parentsanditschilds.depth+1
from ComplexType
join parentsanditschilds on ComplexType.ParentID=parentsanditschilds.childid
)

select * from parentsanditschilds order by depth

所以现在应该添加什么来为每个父项创建表,其列是其子项

0 个答案:

没有答案