8 may. 2008

"Randomizar" los datos o Datos Aleatorios


Hoy me confronte al problema de alimentar un sistema de planificación con datos erróneos pero con muchos datos.
Intente con la función RAND() de SQL pero me di cuenta que el RAND() pone un valor aleatorio para toda la consulta, no línea por línea.

Después de haber buscado un poco encontré esta manera de hacerlo:

select convert(float,ABS(CAST(NEWID() as binary(8)) % 100000))/10 +1

La función NEWID genera un nuevo valor aleatorio de tipo GUID (Mas aleatorio imposible). Le sumamos 1 para que nunca nos de 0.
Más explicación en
http://technet.microsoft.com/es-es/library/ms191530.aspx

1 comentario:

Anónimo dijo...

Apreciado Remi,
Somos un análista neutral de software BI situado en Barcelona (barc.es) y lanzamos un nuevo portal en la red (B-eye Network Spain,http://www.b-eye-network.es). Ahora estamos buscando expertos de BI en España que les gusta participar. Te lo agradeceía mucho si me contactaras: khild@barc-spain.com
Saludos
Kristina Hild