树形结构的处理--数据显示排序、统计
--数据结构
表名tb,如果修改表名,则相应修改所有数据处理中涉及到的表名tb
id为编号(标识字段+主键)
pid为上级编号
name为名称,后面可以自行增加其他字段.
/*--数据显示排序--*/
--分级显示--横向,先一级,后二级...
select * from tb order by pid
--分级显示--纵向
select * from tb order by dbo.f_getmergid(id)
go
/*--数据统计--*/
--分级统计,每个地区下的明细地区数
select *,
明细地区数=(select count(*) from tb where dbo.f_getmergid(id) like dbo.f_getmergid(a.id)+',%')
from tb a order by dbo.f_getmergid(id)
go