Sous SQL Server 2005, il est possible de facilement générer des numéros de ligne dans une requête en utilisant la fonction ROW_NUMBER.
On peut arriver au même résultat sous MSSQL2000 en utilisant un champ IDENTITY dans une table temporaire.
Un petit exemple qui dit tout :
SELECT NoEmploye, NomEmploye, IDENTITY(int,1,1) AS [Row Number]
INTO [#tempBen]
FROM Employes
ORDER BY DateEmbauche DESC