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:
El problema es que los quiero desordenados y he probado con esto:SELECT * FROM mitabla ORDER BY id DESC limit 0, 8
Código:
y en este caso pasa totalmente de mí y no desordena nada.SELECT * FROM mitabla ORDER BY id DESC, RAND() limit 0, 8
Si pongo:
Código:
me desordena sí, pero no los últimos 8SELECT * FROM mitabla ORDER BY RAND(), id DESC limit 0, 8
He probado con consultas anidadas:
Código:
y me dice que no puedo meter limit en consultas con ALLSELECT * FROM mitabla where id = ALL (SELECT id FROM mitabla ORDER BY id DESC limit 0, 8) ORDER BY rand()
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