我有一个简单的存储过程,返回前20个更糟糕的百分比。 SP看起来像这样:
Create procedure dbo.usp_GetAwfulSalesmen
as
select top 20 AvgSales, Name from Sales order by AvgSales ASC
但是,假设我想要返回前20名之外的东西。
有没有办法将前N个发送到存储过程,这样它才是参数而不是固定值?
我不想使用动态sql。
感谢。
答案 0 :(得分:7)
将INT参数添加到存储过程(即@Top)
Select Top (@Top) AvgSales, Name
From Sales
Order by AvgSales ASC