V SQL Server 2005 a novějších můžete skutečně parametrizovat příkaz top.
Níže uvedený kód pochází z MSDN
USE AdventureWorks;
GO
DECLARE @p AS int;
SELECT @p=10
SELECT TOP(@p)*
FROM HumanResources.Employee;
GO
V dřívějších verzích SQL Serveru budete muset použít rowcount nebo dynamic sql.