createtemporary
table
`treeview`(
`id`
varchar(20
), `org_name`
varchar(20
), `parent_org_id`
varchar(20
), `org_code`
varchar(20))
insert
into treeview(id,org_name,parent_org_id,org_code)values('
1','
根',null,'1'
);insert
into treeview(id,org_name,parent_org_id,org_code)values('
2','
機構1','
1','2'
);insert
into treeview(id,org_name,parent_org_id,org_code)values('
3','
機構1—1
','2
','2');
insert
into treeview(id,org_name,parent_org_id,org_code)values('
4','
機構2','
1','1'
);insert
into treeview(id,org_name,parent_org_id,org_code)values('
5','
機構2-1
','4
','1');
insert
into treeview(id,org_name,parent_org_id,org_code)values('
6','
機構1-2
','2
','1');
create
temporary
table
`tree`(
select id,org_name,parent_org_id,org_code from treeview where parent_org_id in (null,'1'
))insert
into
tree(id,org_name,parent_org_id,org_code)
select id,org_name,parent_org_id,org_code from
tree
union
allselect t.id,t.org_name,t.parent_org_id,t.org_code from treeview as t,tree as
v
where t.parent_org_id = v.id order
byt.org_code
drop
table
treeview
drop
table
tree
select
*from tree
資料結構補充:
樹形結構儲存分為順序儲存(陣列)與鏈式儲存(鍊錶)
儲存方法有:雙親表示法,孩子表示法,孩子兄弟表示法
上述資料庫儲存方法:雙親表示法
樹形結構的sql語句
1 進行資料查詢 select datakey id,agencyid agencyid,ctlg name name,pid pid,ctlg code code from fa b assctlg start with pid connect by prior datakey pid order...
SQL 樹形結構遞迴查詢
with as短語,也叫做子查詢部分 subquery factoring 定義乙個sql 片段,改sql 片段會被整個sql語句用到。其中最實用的功能就是資料的遞迴,遞迴的原理 遞迴包括至少兩個查詢,乙個查詢作為遞迴的基點也就是起點,另乙個查詢作為遞迴的成員。with temp as select...
sql 儲存過程 層次 樹形結構
用sql儲存過程生成樹形結構資料表。建立表 create table table newsclass newsclassname varchar 50 newsclassid int,newsclassparentid int insert into table newsclass select 頂...