W SQL Server 2005 i późniejszych możesz faktycznie sparametryzować górne polecenie.
Poniższy kod pochodzi z MSDN
USE AdventureWorks;
GO
DECLARE @p AS int;
SELECT @p=10
SELECT TOP(@p)*
FROM HumanResources.Employee;
GO
We wcześniejszych wersjach SQL Server będziesz musiał użyć licznika wierszy lub dynamicznego sql.