Sì, in SQL Server 2005 è possibile utilizzare una variabile nella top clausola. select top (@top) * from tablename