Si vas a usar PHP
entonces te conviene traerte los ultimos 20 resultados, y despues que
PHP lo "ordene" aleatoriamente al array, por ejemplo con la funcion
shuffle
http://ar.php.net/manual/en/function.shuffle.php
2009/7/16 Emiliano Horcada <emilianohorcada@stripped>:
> Ok, puedo hacer eso, pero quizás en ese caso me convenga hacerlo desde el
> código (PHP) así no ocupo tanta base de datos, que les parece que
> consumiría
> menos recursos?.
>
> 2009/7/16 GN <gnarvaja@stripped>
>
>> Probá usando INSERT ... SELECT ... en una tabla temporaria:
>>
>> Si tu query original es SELECT col1_fecha, col2 FROM tabla ORDER BY
>> col1_fecha DESC LIMIT 20 los pasos son:
>>
>> 1. Crea una tabla temporaria con columnas: col0, col1_fecha, col2.
>> col0 va a tener la salida de RAND()
>> 2. Agregás los valores a la tabla temporaria con: INSERT INTO
>> tabla_temp (col0, col1_fecha, col2) SELECT rand(), t.col1_fecha,
>> t.col2 FROM tabla t ORDER BY t.col1_fecha DESC LIMIT 20
>> 3. Tu nuevo query lo hacés sobre la tabla temporaria: SELECT
>> col1_fecha, col2 FROM tabla_temp ORDER BY col0
>>
>> Las tablas temporarias son locales para la conexión y desaparecen
>> cuando te desconectás. Para un tabla tan chica, se crea en memoria
>> solamente.
>>
>> Espero que te sirva. Atentamente,
>> G
>>
>> 2009/7/16 Emiliano Horcada <emilianohorcada@stripped>:
>> > Si, probé, y no funciona.
>> >
>> > 2009/7/16 16 minutos <16minutos@stripped>
>> >
>> >> Hola Emiliano,
>> >> probaste
>> >> ORDER BY Fecha DESC, rand() LIMIT 0, 20
>> >> ?
>> >> Un saludo,
>> >> alejandro
>> >>
>> >> 2009/7/15 Emiliano Horcada <emilianohorcada@stripped>
>> >>
>> >> > Tengo en una tabla los campos: Titulo, Fecha. Y necesito obtener
> los
>> 20
>> >> > registros más nuevos, es decir que ORDER BY Fecha DESC LIMIT
> 0,
>> 20Pero,
>> >> > necesito que estos 20 registros se ordenen aleatoreamente. Se
>> entiende?.
>> >> > Existe una forma de hacer eso con la consulta?.
>> >> >
>> >>
>> >
>>
>>
>>
>> --
>> Time's fun when one has flies -- A friend of mine
>> Lenny Bruce - "Communism is like one big phone company." -
>> http://www.brainyquote.com/quotes/authors/l/lenny_bruce.html
>>
>> --
>> Lista de Correos de MySQL
>> Para el historial de la lista: http://lists.mysql.com/mysql-es
>> Para cancelar inscripción:
>> http://lists.mysql.com/mysql-es?unsub=1
>>
>>
>