Hola!
A ver por donde empiezo:
Tengo una tabla con cientos de registros, y yo solamente necesito los últimos 8 que han entrado, es decir
Código:
SELECT * FROM mitabla ORDER BY id DESC limit 0, 8
El problema es que los quiero desordenados y he probado con esto:
Código:
SELECT * FROM mitabla ORDER BY id DESC, RAND() limit 0, 8
y en este caso pasa totalmente de mí y no desordena nada.
Si pongo:
Código:
SELECT * FROM mitabla ORDER BY RAND(), id DESC limit 0, 8
me desordena sí, pero no los últimos 8
He probado con consultas anidadas:
Código:
SELECT * FROM mitabla where id = ALL
(SELECT id FROM mitabla ORDER BY id DESC limit 0, 8)
ORDER BY rand()
y me dice que no puedo meter limit en consultas con ALL
Vaya dolor de cabeza me está dando esta tontería...
A ver si alguien me puede ayudar.
Sospecho que habrá una manera muchísimo más sencilla de hacerlo, pero no doy con ella!
Gracias de antemano