HACER UN SELEC ALEATORIO

Julio Horna
02 de Septiembre del 2004
HOLA AMIGOS:
OTRA VEZ LOS MOLESTO TENGO QUE HACERLE UNA CONSULTA, YO QUIERO HACER UN SELECT A UNA TABLA QUE TIENE MUCHOS CODIGOS DE ALUMNO PERO QUIERO QUE DE LOS 3000 CODIGOS SOLO ME ELIJA 100 PERO EN FORMA ALEATORIA.
NO SE SI ESTA FUNCION ESTA DISPONIBLE EN LA BASE DE DATOS ORACLE, USO TOAD PARA LAS CONSULTAS.

GRACIAS DE ANTEMANO

vmarquez
02 de Septiembre del 2004
toma un patron de un valor en alguna columna que sea numerico, este valor extrelo y hazlo join con el siguiente valor pseudo aleatorio

SELECT TRUNC((TO_NUMBER(SUBSTR(TO_CHAR(TO_NUMBER(TO_CHAR(SYSDATE,'sssss'))/86399),-7,7))/10000000)*32767) random FROM dual

hecho esto el valor obtenido vuelvelo a buscar en el patron de la columna que selecciones

N?or
02 de Septiembre del 2004
Probá con
select ... from la_tabla sample block (n%)

Jorge-DBA
02 de Septiembre del 2004
Utiliza el Package DBMS_RANDOM de Oracle.

Saludos.!