Función mt_random()
La función mt_random() devuelve un número pseudoaleatorio de 0,0 a 1,0, utilizando el generador de números pseudoaleatorios Mersenne Twister. Se trata de una biblioteca de código abierto que genera rápidamente números pseudoaleatorios de alta calidad con un periodo de 2 19937-1 y una buena distribución.
Los números pseudoaleatorios son excelentes para simulaciones, como por ejemplo, las simulaciones Monte Carlo. Los números pseudoaleatorios son también muy adecuados para los sondeos. Por ejemplo, los números pueden proporcionar una muestra aleatoria de 1000 registros, de una tabla de 1.000.000 registros.
Este algoritmo no es por sí solo adecuado para el cifrado porque se necesitan como mínimo 624 iteraciones para predecir todas las iteraciones futuras. La inclusión de esta función en una función hash es probablemente suficiente para ofrecer números aleatorios seguros desde el punto de vista criptográfico.
Netezza Performance Server ofrece una función " random() " integrada basada en el algoritmo Linear Congruential Generator. El algoritmo Mersenne Twister se prefiere con frecuencia para determinadas aplicaciones con aleatoriedad.
Sintaxis
mt_random = mt_random();
Devuelve
La función devuelve un número pseudo-aleatorio entre 0,0 y 1,0.
Ejemplo
El ejemplo siguiente presenta una muestra aleatoria distribuida de 10 registros procedentes de la tabla Customer_Table:SELECT * FROM Customer_Table ORDER BY mt_random() LIMIT 10;