【发布时间】:2016-10-20 17:54:44
【问题描述】:
我有一张桌子:TblMemberPosition
运行 sql 代码 -
with cte(MemberID, SponserID, Level)
as
(
select MemberID, SponserID, 1 as Level
from TblMemberPosition
where MemberID = 10021
union all
select a.MemberID, a.SponserID , Level + 1
from TblMemberPosition as a
inner join cte as b
on b.MemberID = a.SponserID
)
select (count (MemberID)) as MemberCount, Level
From cte
where Level <= 8
Group by Level
order by Level
以上查询结果:
MemberCount Level
1 1
1 2
3 3
1 4
2 5
1 6
1 7
2 8
但我想要输出 Like -
MemberID Level1 Level 2 Level 3 Level 4 .... Level upto 9
10021 1 1 3 1
此代码是为单个 MemberId 生成的。你能帮助为所有成员生成这个结构吗?
【问题讨论】:
标签: c# sql sql-server pivot common-table-expression