使用遊標查詢數據
--這個是根據部門ID,和公司,找到這個部門下的子部門,然後根據子部門ID查找該部門有多少人多少輛車
-- UP3_Tdept_SelectByTDtPID 2
alter proc UP3_Tdept_SelectByTDtPID
@TDtID int
as
begin
create table #aa
(
TDtID int,
TDtName varchar(50),
car int,
people int
)
declare @car int
DECLARE Employee_Cursor CURSOR local FOR(select TDtID from tdept where tdtpid=@TDtID )--父部門下的子部門的部門ID(TDtID)
OPEN Employee_Cursor
FETCH NEXT FROM Employee_Cursor into @car
WHILE @@FETCH_STATUS = 0
BEGIN
insert into #aa(TDtID,TDtName,car ,people)
select TDtID ,TDtName,dbo.Select_car_bydep2(TDtID) ,dbo.[Select_car_byperson2](TDtID)--將TDtID作爲參數傳給函數並將查詢出來的數據插入臨時表中
from tdept
where TDtID =@car
order by TDtID desc
FETCH NEXT FROM Employee_Cursor into @car
END
select * from #aa
CLOSE Employee_Cursor;
drop table #aa
end