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

Sacar de una db un random +- 20%

Estas en el tema de Sacar de una db un random +- 20% en el foro de Bases de Datos General en Foros del Web. Parece un poco complicado pero seguro que se puede hacer no? Me gustaria saber como puedo extraer del mysql un jugador que tenga un nivel ...
  #1 (permalink)  
Antiguo 17/12/2004, 12:27
Avatar de ostrasjo  
Fecha de Ingreso: diciembre-2004
Mensajes: 165
Antigüedad: 19 años, 4 meses
Puntos: 0
Sacar de una db un random +- 20%

Parece un poco complicado pero seguro que se puede hacer no?

Me gustaria saber como puedo extraer del mysql un jugador que tenga un nivel +-20% de mi nivel.(Es pa pegarle una paliza nada mas).Ya que si extrae uno aleatorio pero es muy fuerte siempre pierdo.
El código que tengo es este:

Código PHP:
$select mysql_query("SELECT * FROM user where (mid != $mid) ORDER BY RAND() LIMIT 1");//////aqui selecciono un jugador de mi db al azar que no sea el mio claro esta. Pero me gustaría saber como selecciono, además, uno que tenga aproximadamente mi nivel. 
Podría ser mas o menos asi no?
Código PHP:
$select mysql_query("SELECT * FROM user where ((mid != $mid) & (mnivel +- 20)) ORDER BY RAND() LIMIT 1"); 
Gracias de antemano por la molestia.
  #2 (permalink)  
Antiguo 17/12/2004, 14:04
Avatar de ostrasjo  
Fecha de Ingreso: diciembre-2004
Mensajes: 165
Antigüedad: 19 años, 4 meses
Puntos: 0
tambien he probado con esto pero nada,

He probado este código pero nada, me sigue sacando lo que le da la gana, menos mi usuario que si que me lo respeta y no me lo saca.
Código PHP:
$nivel_porcentaje = ($mnivel*20)/100;
    
$max_porcentaje $mnivel+$nivel_porcentaje;
    
$min_porcentaje $mnivel-$nivel_porcentaje;
    
$select mysql_query("SELECT * FROM monstruos where ((nivel >=$min_porcentaje) or (nivel <=$max_porcentaje)) ORDER BY RAND() LIMIT 1");
    
$row mysql_fetch_array($select); 
  #3 (permalink)  
Antiguo 17/12/2004, 14:07
Avatar de ostrasjo  
Fecha de Ingreso: diciembre-2004
Mensajes: 165
Antigüedad: 19 años, 4 meses
Puntos: 0
Ya esta arreglado, era el or que puse en vez de &

Menos mal que volvi a postear en el foro y a releer mi post vi el fallo.

dew
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 10:40.