表A(部门)--字段
部门ID    部门名称   上级部门
1           北京       中国
2          海淀区      北京
3          朝阳区      北京表B(人员)--字段
人员ID     人员名      部门ID
4           小一         1
5           小二         2
6           小三         3表C(薪水)--字段
薪水ID      薪水      人员ID   部门ID
1           200          4        1
2           300          5        2
3           400          6        3问题: 当我在一个文本框里输入北京的时候出来的效果为---
北京     小一     200
海淀区   小二     300
朝阳区   小三     400create table A
(部門ID int,   部門名稱   varchar(10), 上級部門 varchar(10))
insert into A
SELECT 1,          '北京',       '中國'  UNION ALL
SELECT 2,          '海淀區',      '北京' UNION ALL
SELECT 3,          '朝陽區',      '北京' UNION ALL
SELECT 4,          '江西'  ,      '中國' union all
select 5,          '南昌',        '江西' union all
select 6,          '進賢',        '南昌'
create table B
(人員ID int,    人員名 varchar(10),      部門ID int)
insert into B
select 4,           '小一',         1 union all
select 5,           '小二',         2 union all
select 6,           '小三',         3 union all
select 7,           '張三',         4 union all
select 8,           '張三',         5 union all
select 9,           '張三',         6     create table C
(薪水ID int,      薪水 int,      人員ID int,  部門ID int)
insert into C
select 1,           200,          4,        1 union all
select 2,           300,          5,        2 union all
select 3,           400,          6,        3 union all
select 4,           500,          7,        4 union all
select 5,           500,          8,        5 union all
select 6,           500,          9,        6   create function dbo.aa(@str varchar(10))
returns @t table (部門ID int,部門名稱 varchar(100),上級部門 varchar(100),level int)
as 
begin
declare @i int 
set @i=1insert into @t
select *,@i 
from  A  
where 部門名稱=@strwhile @@rowcount>0 
begin
set @i=@i+1
insert into @t
select t.*,@i from A t LEFT JOIN @t b on t.上級部門=b.部門名稱
where b.level=@i-1
end  return
endselect t1.部門名稱 ,t2.人員名,t3.薪水
from  dbo.aa('江西')t1 left join B t2 on t1.部門ID=t2.部門ID
                       left join C t3 on t2.部門ID=t3.部門ID 
                                     and t2.人員ID=t3.人員ID
order by t1.部門名稱
compute sum(t3.薪水)
如果上级部门不能确定是多少个应该怎么写