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

select .. order by 'ALEATORIO'

Estas en el tema de select .. order by 'ALEATORIO' en el foro de Mysql en Foros del Web. Hola tengo que hacer un sorteo entre 30 registros que son los que cumplen una condicion WHERE, y quisiera sortear 5 puestos entre los 30 ...
  #1 (permalink)  
Antiguo 29/09/2009, 16:34
 
Fecha de Ingreso: noviembre-2002
Mensajes: 746
Antigüedad: 21 años, 5 meses
Puntos: 6
select .. order by 'ALEATORIO'

Hola

tengo que hacer un sorteo entre 30 registros que son los que cumplen una condicion WHERE, y quisiera sortear 5 puestos entre los 30 los 5 que salgan seran los que aparezcan en una parte de la web.

¿existe alguna forma de hacer este sorteo en el select?

algo asi
SELECT * FROM webs WHERE calidad=1 ORDER BY 'ALEATORIO' LIMIT 5


Si no se puede hacer en consulta
¿que recomendais para el sorteo?

gracias
  #2 (permalink)  
Antiguo 29/09/2009, 16:40
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: select .. order by 'ALEATORIO'

cambia 'ALEATORIO' por RAND()
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 29/09/2009, 16:52
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Respuesta: select .. order by 'ALEATORIO'

Tema movido desde PHP a Mysql (aunque no se especifica).

RTFM:
Cita:
mysql> SELECT * FROM tbl_name ORDER BY RAND();

ORDER BY RAND() combined with LIMIT is useful for selecting a random sample from a set of rows:

mysql> SELECT * FROM table1, table2 WHERE a=b AND c<d -> ORDER BY RAND() LIMIT 1000;
http://dev.mysql.com/doc/refman/5.0/...functions.html
Echarle igual una mirada a los comentarios. Un saludo
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #4 (permalink)  
Antiguo 29/09/2009, 17:01
 
Fecha de Ingreso: noviembre-2002
Mensajes: 746
Antigüedad: 21 años, 5 meses
Puntos: 6
Respuesta: select .. order by 'ALEATORIO'

gracias a los dos, cierto con rand() soluciono el problema.

disculpar si debi preparar la consulta para iniciarla en mysql, el caso es que 5 minutos despues de ponerla ya me ayudasteis y eso es de agradecer, para la proxima prometo intentar ubicarla mejor..

gracias.
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 02:39.