declare @list nvarchar(1000)
set @list = '''456456Test2814557616'',''456456Test6005645184'''
declare @num int,
@sqls nvarchar(4000)
set @sqls='
select @a=sum(iCash)
from (
select substring(cardid,7,4)CardTypeId,* from t_INPWalletDetail
where cardid in ('+ @list +')
) card
left outer join
t_INServiceCardToiCash rate
on card.CardTypeId = rate.CardTypeId
'
exec sp_executesql @sqls,N'@a int output',@num output --后边定义的@num是输入变量,@a不用定义
select @num