Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Générer des données de test de temps SQL Server 2008 aléatoires

Il y a 86 400 000 millisecondes dans une journée, vous pouvez donc obtenir une valeur de temps aléatoire en procédant comme suit :

select dateadd(millisecond, cast(86400000 * RAND() as int), convert(time, '00:00'))

Pour votre exemple où vous voulez des heures entre 8h00 et 9h00, il y a 3 600 000 millisecondes dans une heure, alors modifiez la requête comme ceci.

select dateadd(millisecond, cast(3600000 * RAND() as int), convert(time, '08:00'))

Afin de mettre dans votre nouvelle table, vous pouvez soit faire une boucle T-SQL avec des mises à jour (s...l...o...w...), soit faire un SELECT INTO de votre tableau d'origine dans un nouveau tableau.