If you run the following query in both SQL Server 2000 and 2005 , you can see the difference select random,random,random from ( select rand() as random ) as t Those behaviour changes are documented here http://msdn2.microsoft.com/en-us/library/ms143359...