Ir al contenido principal

Hacer selección (SELECT) por orden aleatorio en MySQL

Si queremos hacer una consulta (select) en MySQL que nos obtenga un conjunto de registros con un orden aleatorio, tendremos que usar la función RAND(), tal y como muestro en el siguiente ejemplo:

SELECT * FROM tbl_elbitcampeador ORDER BY RAND();

Esta consulta obtiene todos los registros, con todos sus campos, de la tabla tbl_elbitcampeador y ordena dichos registros aleatoriamente.

Este método combinado con LIMIT es una manera muy útil de obtener un muestreo aleatorio de N elementos. Por ejemplo:

SELECT * FROM tabla_elbitcampeador ORDER BY RAND() LIMIT 100;

Obtiene 100 elementos aleatoriamente de la tabla tbl_elbitcampeador.

La función RAND() no está implementada haciendo uso de un perfecto algoritmo de generación aleatoria, pero nos ofrece una poderosa y rápida herramienta de selección aleatoria en una tabla.

Comentarios

  1. Gracias por tu apunte, muy útil, po ejemplo para ua galeria fotográfica. :)

    ResponderEliminar
  2. Excelente para elegir mostrar una imagen con publicidad en forma aleatoria, gracias.

    ResponderEliminar
  3. Muchas gracias! lo suponia, pero no sabia en donde poner la funcion!
    Saludos

    ResponderEliminar
  4. Muchas gracias es muy util tu ayuda

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

Cosmic Supremacy : Juego 4X online, gratuito y multijugador basado en conquistas espaciales

  Llevaba bastante tiempo buscando un juego de estrategia en el espacio, multijugador , y que fuera por turnos . Un requisito que siempre tuve es que fuera fácil aprenderlo, y tuviera suficiente ayuda o tutoriales. Creo que lo he encontrado, se llama Cosmic Supremacy , y es gratis . Os dejo aquí información traducida desde su web oficial por si os animáis :) ¿Qué es Cosmic Supremacy? Cosmic Supremacy es un juego gratuito de estrategia espacial multijugador masivo basado en ticks/turnos con una interfaz 3D 'Galaxy View'. Compartes una galaxia con cientos de jugadores, cada uno con su propia civilización alienígena. Algunos de ellos pueden llegar a ser tus enemigos, otros podrían ser tus aliados. Necesitas explorar la galaxia que te rodea, descubrir nuevos sistemas solares, colonizar nuevos planetas y expandir tu imperio. Puedes diseñar todas las naves de tu flota e investigar nuevas tecnologías avanzadas para poder construir naves más rápidas y fuertes que te darán la ventaja ...

Hacer una pausa en un fichero por lotes batch (bat o cmd)

En consola de Windows (antiguamente Ms-Dos) desde siempre se ha podido hacer una pausa, esperando confirmación del usuario. El comando en cuestión es: pause Si escribimos pause en nuestra consola veremos que la consola se queda pausada hasta que pulsamos una tecla. Esto es útil en ficheros batch (ya sean .bat o .cmd) para hacer pausas controladas entre distintos comandos, a la espera que el usuario pulse alguna tecla para continua. Pero, ¿qué ocurre si queremos una pausa de cierto número de segundos y luego continúe el proceso automáticamente ? No hay ningún comando que lo haga, pero haciendo el siguiente "truco" (hace un ping a una URL especificando el número de segundos como timeout) lo podremos conseguir ping -n 10 localhost > null Simplemente cambiar el 10 por el número de segundos que queráis, y ya tendréis en consola (o msdos) una pausa de N segundos, y luego el proceso continuará automáticamente.  

jQuery Cycle Plugin - Transiciones animadas de imágenes (slideshow)

jQuery Cycle plugin proporciona un mecanismo de hacer transiciones animadas de imágenes . Su implementación está basada en el InnerFade Plugin de Torsten Baldes, el Slideshow Plugin de Matt Oakes, y el jqShuffle Plugin de Benjamin Sterling. El plugin soporta pausas al pasar el ratón por encima de la imágen, paradas automáticas, retrollamadas (callbacks) antes y después, disparadores (triggers) y una gran cantidad de efectos para las trasiciones. La última versión estable (2.34), publicada en esta misma semana, requiere, como mínimo, la versión 1.2.3 de jQuery . Es un plugin muy ligero, tan solo ocupa 18 KB en su versión para entornos de producción. Como casi todo en jQuery , es muy fácil de usar. Aquí pongo un breve ejemplo básico: HTML: [sourcecode language="html"] [/sourcecode] CSS: [sourcecode language="css"] .pics { height: 232px; width: 232px; padding: 0; margin: 0; } .pics img { padding: 15px; border: 1px solid #ccc; ...