查詢所有子節點的問題
create table a( userid int, username nvarchar(10), ratio int, amount int, fatherid int)
insert into a
select 1, n'田方', 12, 200, 0 union all
select 2, n'張三', 8, 100, 1 union all
select 3, n'李四', 12, 200, 1 union all
select 4, n'王五', 6, 130, 2 union all
select 5, n'楊六', 9, 200, 3 union all
select 6, n'陳七', 4, 190, 2
gocreate function f_cid(
@id int
)returns @re table(userid int,[level] int)
asbegin
declare @l int
set @l=0
insert @re select @id,@l
while @@rowcount>0
begin
set @l=@l+1
insert @re select a.userid,@l
from a,@re b
where a.fatherid=b.userid and b.[level]=@l-1
endreturn
endgo
select a.*,層次=b.[level],amount*ratio/100 as fee from a,f_cid(2)b
where a.userid=b.userid
-----------------
select sum(fee)
from(
select a.*,層次=b.[level],amount*ratio/100 as fee from a,f_cid(2)b
where a.userid=b.userid
)tgo
drop function f_cid
drop table a
樹的家族系列
size large align center color darkblue 樹 tree 的家族系列 color align size size medium 最近有個想法,想把自己研究的東西寫出來和廣大分享,首先從資料的儲存結構 樹開始,樹是演算法和資料結構入門的童邪必學的內容。很多童邪學習資料...
有關樹的幾個經典問題
1 假設二叉樹 n0 x 度數為0的節點數,n1 y 度數為1的節點數,n2 z 度數為2的節點數 其中有關係 n0 n2 1 2 對於一棵節點數為n 度為4的樹來說那麼樹的高度至多是 但是某一層並不一定正好有4個節點,因為這和度為4並沒有必然聯絡 3 度為4,高度為h的樹,至少有h 3個節點。原理...
樹的有關概念
樹 n n 0 個結點構成的有限集合 空樹 n 0時,樹稱為空樹 樹的根 沒有父親節點但是有左右兒子的結點 邊的數目 一顆n個結點的樹有n 1條邊 結點的度 結點的子樹個數 樹的度 樹種所有結點中最大的度數 葉節點 度為0的結點 父節點 有子樹的結點是其子樹的跟結點的父結點 子結點 若a結點是b結點...
C 學習筆記1 size家族有關的種種雜記
陸陸續續的學習c 可以說是小白,也只是把c primer中的內容照搬過來當成一個總結。1 string的size操作 首先翻閱到跟size有關的c primer書中記載的是string的size操作。書中提到 size用來獲取string物件的長度 e.g.int main 簡單的說呢 這地方的si...
筆試題中有關樹的問題彙總
樹 tree 是一種簡單的非線性結構。所有資料元素之間有明顯的層次特性。根節點 沒有父節點的節點。葉子節點 沒有子節點的節點。節點的度 一個節點所擁有的後件個數稱為該節點的讀。樹的度 所有節點中最大的度。樹的深度 樹的最大層次。二叉樹是一種每一個節點最多有兩顆子樹的樹。估計這一特性,能夠計算二叉樹的...