SqlServer存储过程里拼凑SQL语句,输出2个参数或多个参数方式

本文介绍了在存储过程中如何使用SQL语句输出单个或多个参数的方法。对于非拼凑SQL可以直接通过SELECT语句输出指定变量,而对于需要拼凑的SQL则可以通过声明变量并使用EXEC sp_executesql来实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

昨天写存储过程,发现拼凑SQL要输出多个参数,但我之前一直没有拼凑SQL在存储里,百度了下,其实很简单,就记录下:

单个或多个参数输出,不是拼凑的SQL直接可以这样输出:

    SELECT @FStartTime = CONVERT(VARCHAR(10),FStartTime,120), @FEndTime = FEndTime FROM T_RebateRule WHERE FID = @FRebateRuleID

单个或多个参数输出,拼凑的SQL可以采用这样方式:

declare @strSql nvarchar(4000),@sum varchar(20),@sum1 varchar(20)

     SET @strSql ='SELECT top 1 @sum=sum(fcounts),@sum1=sum(FCounts) from t_orderdetail where FProductModel in('''+@FModels+''')'

        EXEC sp_executesql @strSql,N'@sum varchar(20) OUTPUT,@sum1 varchar(20) OUTPUT',@sum OUTPUT,@sum1 OUTPUT        
            
        print @sum
        print @sum1

记录下,以防我下次需要或给需要的同学!

转载于:https://www.cnblogs.com/flyfish2012/archive/2013/01/11/2855838.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值