Sim, no SQL Server 2005 é possível usar uma variável no top cláusula. select top (@top) * from tablename