Ver Mensaje Individual
  #13 (permalink)  
Antiguo 12/11/2009, 06:00
Avatar de Adler
Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 3 meses
Puntos: 126
Respuesta: Recuperar registros al azar con BD

Hola

No lo había probado creyendo que funcionaba. Prueba ahora

Código asp:
Ver original
  1. <%@LANGUAGE="VBSCRIPT"%>
  2. <%
  3. Function NoAleatorio(inicio, fin)
  4. Randomize()
  5. NoAleatorio = Int((fin - inicio + 1) * Rnd + inicio)
  6. End Function
  7.  
  8. Response.Write "SACAR REGISTROS ALEATORIAMENTE<br /><br />"
  9.  
  10. 'Numero de registros que devolveremos del recordset
  11. recNo = 3
  12.  
  13. set oConn=Server.CreateObject("ADODB.Connection")
  14. oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("./Prueba.mdb")&";"
  15. SQL = "SELECT TOP " & recNo &" id, referencia, nombre, tamano FROM tabla5 ORDER BY " & NoAleatorio(1,4) &""
  16.  
  17. '---Debug-----
  18. 'Response.Write(SQL)
  19. 'Response.End()
  20. '-------------
  21.  
  22.  
  23. set rs = oConn.Execute(SQL)
  24. registros = rs.GetRows
  25. rs.Close
  26. Set rs = Nothing
  27. oConn.Close
  28. Set oConn = Nothing
  29.  
  30.  
  31. For i = 0 To UBound(registros,2)
  32. Response.Write registros(0,i)  &" - " & registros(1,i)  &" - " & registros(2,i)  &" - " & registros(3,i) & "<br />"
  33. Next
  34. %>

Nota; Fíjate en esto NoAleatorio(1,4). En este caso obcila en el 1 y el 4 por que son el número de campos que he seleccionado. Si en tu caso seleccionas 7 campos, entonces sería NoAleatorio(1,7)

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />