sql >> Base de Datos >  >> RDS >> Mysql

¿Cuál es la mejor manera de 1000 filas aleatorias (no filas duplicadas) desde mysql?

Bueno, por el comentario también estás satisfecho con una respuesta teórica.

Si tiene su matriz con todas las filas, use array_unique() para deshacerse de las filas duplicadas, use shuffle() para mezclarlos y al final puedes tomar un trozo con array_slice() .

EDITAR:

Puede mejorarlo cuando ya no selecciona filas duplicadas, entonces no tiene que usar array_unique() . Para esto, use DISTINCT . Y si quiere hacer todo en una consulta, puede hacer algo como esto:

SELECT DISTINCT column FROM table
ORDER BY RAND()
LIMIT 1000