Foros del Web » Programando para Internet » PHP »

Sacar resultados aleatorios de mysql

Estas en el tema de Sacar resultados aleatorios de mysql en el foro de PHP en Foros del Web. Buenas Alguien me podría decir si se puede sacar un número determinado de resultados aleatoriamente de mysql. Me explico, tengo esto yo $sql= mysql_query("select * ...
  #1 (permalink)  
Antiguo 08/05/2004, 12:41
 
Fecha de Ingreso: enero-2004
Mensajes: 87
Antigüedad: 20 años, 2 meses
Puntos: 1
Sacar resultados aleatorios de mysql

Buenas

Alguien me podría decir si se puede sacar un número determinado de resultados aleatoriamente de mysql.
Me explico, tengo esto yo
$sql= mysql_query("select * from tabla limit 0,100",$conecta);
while ($versql = mysql_fetch_array($sql)) {
echo $versql[palabra]."\n";
}
se podría, teniendo por ejemplo 1000 datos en la mysql, sacarlos aleatoriamente, es decir, tal como lo tengo, siempre me muestra las mismas palabras, las del 0 al 100, como podría ser para que me muestre 100 resultados pero que cada uno sea distinto, es decir, que salgan la palabra 3, 523, 459, 24, ... asi todo el rato.

Saludos
  #2 (permalink)  
Antiguo 08/05/2004, 14:25
 
Fecha de Ingreso: diciembre-2003
Mensajes: 1.583
Antigüedad: 20 años, 3 meses
Puntos: 13
select*from tabla order by rand() limit 100
__________________
El conocimiento es libre: Movimiento por la Devolución
  #3 (permalink)  
Antiguo 09/05/2004, 04:23
 
Fecha de Ingreso: enero-2004
Mensajes: 87
Antigüedad: 20 años, 2 meses
Puntos: 1
Buenas

Pero si rand() toma un valor que no existe, dará un warning o un error.
Aunque gracias.

Saludos
  #4 (permalink)  
Antiguo 09/05/2004, 04:53
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 9 meses
Puntos: 16
Hola,

No, porque lo que hace esa expresion es añadir un campo que llena con el valor del rand() y ordenar por ese nuevo campo. Algo como:

SELECT *, rand() as aleatorio order by aleatorio

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 09/05/2004, 05:40
 
Fecha de Ingreso: enero-2004
Mensajes: 87
Antigüedad: 20 años, 2 meses
Puntos: 1
Buenas

Pues entonces, ya voy a implementarlo, muchas gracias por la aclaración.

Saludos
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 18:31.