Tengo que hacer una consulta a una tabla que me devuelva 10 filas aleatoriamente.
SELECT * FROM pregunta ORDER BY rand() LIMIT 1,10
Bajo el resultado de esa consulta tengo que realizar un inner join con otra consulta para que me devuelva de cada fila anterior sus referencias de acuerdo a la clave. Escogiendo todas las filas y luego haciendo el innerjoin seria:
SELECT * FROM pregunta p INNER JOIN (SELECT * FROM respuesta ) AS resp ON p.id=resp.id
El problema es que no puedo decirle a la primera consulta que me seleccione aleatoriamente 10 porque la instruccion order by se debe poner al final de la consulta y si hago eso me va seleccionar al azar 10 del total y eso no seria correcto yaque para cada pregunta talvez no ponga todas las respuestas.
No funciona, como le prodria hacer
SELECT * FROM pregunta p ORDER BY rand() LIMIT 1,10 INNER JOIN (SELECT * FROM respuesta ) AS resp ON p.id=resp.id