PDA

Ver la Versión Completa : Funcion Random


sponsor
29/07/10, 17:52:45
Hola, sabeis alguna funcion a la que le pases una tabla y te la devuelva desordenada?

Osea que la funcion te organize los registros aleatoriamente

cmacvicar
29/07/10, 18:34:21
No Conozco alguna que te lo haga automáticamente lo que quieres.

Pero tengo una solución para tu problema:

1.- Agregar a tu tabla un Campo Numérico

2.- Cuando Llenas la Tabla Ocupa la Función QF05_RANDOM_INTEGER
(Le pasas un mínimo y un máximo y te devuelve un nº aleatorio entre ese rango)
y Llenas esta Campo de la Tabla

3.- Después de tener lleno este campo numérico con un random la Ordenas Descenderte o Ascendentemente con el campo y tendrás un orden aleatorio de la tabla.

Espero que te guste esta solución a el problema que planteas :D

sponsor
29/07/10, 20:30:21
En realidad deberia ser mas aleatorio que solo ascendente descendente ;)

Tambien estaria bien seleccionar un numero pequeño de registros, creo que de esa manera seria mas facil hacer una aleatoriedad mas compleja.

cmacvicar
29/07/10, 21:38:05
Parece que no me esplique bien...

El Orden ascendente o descendente si es del Numero Random genera un Orden Random.

Ej:

* Antes de Ordenar la Tabla Por el Campo Random

Nº Reg Campo Random Otros Campos .......
1 45
2 34
3 77
4 65
5 24
6 67

* Despues de Ordenar la Tabla Por el Campo Random (Descendente)

Nº Reg Campo Random Otros Campos .......
5 24
2 34
1 45
4 65
6 67
3 77

Si te fijas el Campo Random esta ordenado pero los registros están completamente desordenados. :D

sponsor
29/07/10, 22:05:20
Gracias lo provare a ver k tal, saludos

Una pregunta, es posible k se repitan numeros de los k genera no?

cmacvicar
29/07/10, 23:07:19
Pero si se repite con suerte van a ser 2 cada 500 registros o 1000 dependiendo del Rango del Random que le des.

y te los dejaría juntos

Deja el random entre 1 y un millón :D

zehiter
12/07/16, 17:23:01
Excelente cmacvicar la función QF05_RANDOM_INTEGER que sugieres me funcionó y logré lo que buscaba, ordenar aleatoriamente una tabla interna.;)