Ver Mensaje Individual
  #14 (permalink)  
Antiguo 02/04/2009, 12:10
Avatar de u_goldman
u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 10 meses
Puntos: 98
Respuesta: Sacar registros aleatorios de BD?



Código asp:
Ver original
  1. function getRandomNumber()
  2.     Randomize()
  3.     getRandomNumber = int (1000*Rnd)+1
  4.  end function
  5.  
  6. 'Numero de registros que devolveremos del recordset
  7. recNo = 3
  8.  
  9. strSQL = "SELECT TOP " & recNo & " id, campo1, Rnd(" & -1 * (getRandomNumber()) & "*id) FROM tbl1 ORDER BY 3"

La magia sucede cuando obtienes un numero aleatorio y lo vuelves a aleatorizar haciendo un calculo en access que en este caso consiste en obtener un numero aleatorio multiplicado por el id, despues se ordena con un numero N, en este caso el mismo valor usado para devolver los primeros registros y listo
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway

Última edición por u_goldman; 02/04/2009 a las 13:46