Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Sacar Registro aleatorio

Estas en el tema de Sacar Registro aleatorio en el foro de Mysql en Foros del Web. Tengo IDuser,Name,Pass,ciudad En iduser tengo la id, pero claro puede borrar. Supongamos que tengo la tabla iduser con estos registros iduser:1,2,4,7,8,10 Si hago un rando ...
  #1 (permalink)  
Antiguo 12/09/2010, 04:17
Avatar de angel1993  
Fecha de Ingreso: octubre-2009
Mensajes: 752
Antigüedad: 14 años, 6 meses
Puntos: 22
Sacar Registro aleatorio

Tengo
IDuser,Name,Pass,ciudad

En iduser tengo la id, pero claro puede borrar.

Supongamos que tengo la tabla iduser con estos registros
iduser:1,2,4,7,8,10
Si hago un rando puede salir el numero 3 y el numero 3 no me sirve.. por que no esta :s
HELP!
  #2 (permalink)  
Antiguo 12/09/2010, 04:18
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 8 meses
Puntos: 150
Respuesta: Sacar Registro aleatorio

Existe una consulta sencilla pero a la vez muy desaconsejada porque si tienes muchos registros carga mucho al servidor MYSQL, seria algo asi

Select * from tabla order by rand() limit 0,1

Pruebalo a ver.
  #3 (permalink)  
Antiguo 12/09/2010, 04:21
Avatar de angel1993  
Fecha de Ingreso: octubre-2009
Mensajes: 752
Antigüedad: 14 años, 6 meses
Puntos: 22
Respuesta: Sacar Registro aleatorio

Si, funciona... genial.. de momento tengo pocos usuarios, usare eso, en un futuro si tengo mas metere todos los usuarios en un Diccionario (vb.net) y hare un random de ahi..

Muchas gracias :)
  #4 (permalink)  
Antiguo 12/09/2010, 04:22
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 8 meses
Puntos: 150
Respuesta: Sacar Registro aleatorio

Eso es, hay muchas tecnicas para evitar el rand(), como eso que dices, ir guardando 1 vez al dia un indice aparte de ID existentes y tirar de ahi. Saludos!

Etiquetas: registro, aleatoria
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:34.