存储过程返回参数的方法(也是执行动态sql 实现列名成为变量的功能)

存储过程部分

USE [PaymentAnalysis]

GO
/****** Object:  StoredProcedure [dbo].[Test]    Script Date: 2017/2/10 14:18:35 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
ALTER PROCEDURE [dbo].[Test]
(
@Year nvarchar(10),
@option nvarchar(Max),
@All Decimal(18,2) output
)

AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;


    Declare @sql nvarchar(MAX)
set @sql = 'select @sum =  sum(Convert(Decimal(18,2),'+@option+'))  from  dbo.StaticPM'+@Year
exec sp_executesql @sql,N'@sum Decimal(18,2) out',@All out
select @All as 函数内岗位工资和


END


执行部分

--select sum(s.护理10占比) from (
Declare @All Decimal(18,2)
exec dbo.Test '2015','岗位工资',@All output
select @All as 岗位工资和

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值