请教一个存储过程输出数据的问题...

bleempan 2006-04-18 03:07:18
我在存储过程中调用了另一个存储过程,输出结果是
----------A---------------
intAchievement
100
--------------------------

----------B---------------
intCommission
20
--------------------------

A的数据是存储过程GetOneMonthAchievement返回的数据,
B的数据是GetSalesManCommission返回的数据

现在我想只返回B的数据,请问前辈我该怎么做呢?谢谢!




存储过程如下:
------------------------------------------------------------------------------

--根据参数得到业务员的拥金
ALTER procedure GetSalesManCommission
@intYear int, --年份
@intMonth int, --月份
@intID int, --业务员ID
@reaCommissionPercent real, --提成百分比
@intCommission int output --输出提成金额
as


declare @intAchievement int --业绩金额

--得到指定月份的业绩

exec GetOneMonthAchievement @intYear,@intMonth,@intID,@intAchievement output

--计算提成,输出
set @intCommission = @intAchievement * @reaCommissionPercent
select @intCommission as intCommission



------------------------------------------------------------------------------
--根据参数取得业务员的业绩数据
ALTER procedure GetOneMonthAchievement
@intYear int,
@intMonth int,
@intID int,
@intAchievement int output
as


declare @chvMonthField varchar(20) --月份字段
declare @chvSqlSentence nvarchar(255) --SQL语句

--得到月份字段
select @chvMonthField = dbo.GetFieldByMonthNumber(@intMonth)

--根据参数得到业绩金额
set @chvSqlSentence = 'select @a=' + @chvMonthField + ' from AchievementInfo ' +
'where intID=' + str(@intID) + ' and intYear=' + str(@intYear)

exec sp_executesql @chvSqlSentence,N'@a int output',@intAchievement output

select @intAchievement as intAchievement
...全文
89 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
新鲜鱼排 2006-04-18
  • 打赏
  • 举报
回复
execute @intAchievement = dbo.GetOneMonthAchievement @intYear,@intMonth,@intID
將GetOneMonthAchievement修改一下,将数据得到就可以了。

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧