if OBJECT_ID('tempdb..#NewSP') is not null
drop table #NewSP;
if OBJECT_ID('tempdb..#OldSP') is not null
drop table #OldSP;
create table #NewSP (ProjectContractID int,NewSubContractQty int);
create table #OldSP (ProjectContractID int,OldSubContractQty int);
declare @ProjectContractID int,
@ReturnValue int;
declare MyCursor cursor for
select ProjectContractID
from Tbl_Com_ProjectContract
open MyCursor
fetch next from MyCursor into @ProjectContractID
while @@FETCH_STATUS=0
begin
exec @ReturnValue=Sp_Com_GetSubpackageContract_V5222 @ProjectContractID
insert #NewSP
values(@ProjectContractID,
@ReturnValue
)
fetch next from MyCursor into @ProjectContractID
end
close MyCursor
deallocate MyCursor
--select * from #NewSP;
declare MyCursor2 cursor for
select ProjectContractID
from Tbl_Com_ProjectContract
open MyCursor2
fetch next from MyCursor2 into @ProjectContractID
while @@FETCH_STATUS=0
begin
exec @ReturnValue=Sp_Com_GetSubpackageContract_V6 @ProjectContractID
insert #OldSP
values(@ProjectContractID,
@ReturnValue
)
fetch next from MyCursor2 into @ProjectContractID
end
close MyCursor2
deallocate MyCursor2
--select * from #OldSP;
select a.ProjectContractID,
b.NewSubContractQty 新分包數量,
c.OldSubContractQty 舊分包數量,
b.NewSubContractQty-c.OldSubContractQty 相差的分包合約數
from Tbl_Com_ProjectContract a
left join #NewSP b on a.ProjectContractID=b.ProjectContractID
left join #OldSP c on c.ProjectContractID=a.ProjectContractID
where ISNULL(b.NewSubContractQty,0)<>ISNULL(c.OldSubContractQty,0);