-1
我想返回總量和頁數。如何使用sp_executesql從SQL Server返回兩個OUT參數
我要回頁頁次int和總金額爲十進制
@SQL = 'select cast (row_number() over(ORDER BY |SortedColumn| |SortedOrder|) as int)NO , * into #table From (Select SPM.Id as Id,SPM.SalePrice As PlanAmount,SPM.CreatedDate as CreatedDate,SPM.ExpertId as ExpertUserProfileId,P.Id as PatientId,ISNULL((P.FirstName +'' '' + P.LastName),'''') as PatientName
from SubscribedPlanByMember SPM
JOIN Patient P ON
P.UserProfileId=SPM.MemberId
) SP Where 1=1 '
+ @Where +
' select @x = CEILING(CAST((CAST(@@rowcount AS FLOAT)/ CAST('+ltrim(@PageSize)+' AS FLOAT)) AS FLOAT))
select * from #table as t where NO between '+ltrim(@[email protected]+1)+' and '+ltrim(@PageIndex)+' '
SET @TotalAmount= CAST((select Sum(SalePrice) as Amount from SubscriptionPlanOfExperts where [email protected]) as decimal)
SET @SQL= REPLACE(@SQL, '|SortedColumn|', @sortedColumn);
SET @SQL= REPLACE(@SQL, '|SortedOrder|', @sortedOrder);
print(@SQL)
exec sp_executesql @SQL, N'@x int out', @PageCount out
請在所有相關代碼的例。你的變量在哪裏定義和設置? –
也許做一個INSERT INTO #TempTable EXEC(@SQL),並將輸出值作爲SELECT從動態塊中返回。然後在#TempTable –
中使用2x值執行任何操作您可以從sp_executesql返回多個輸出參數。請參閱MSDN https://msdn.microsoft.com/en-us/library/ms188001.aspx – Alex