Bases de Datos => SQL Server => Mensaje iniciado por: pedroqv en Viernes 18 de Diciembre de 2009, 19:22
Título: Consulta sobre consulta en orden aleatorio
Publicado por: pedroqv en Viernes 18 de Diciembre de 2009, 19:22
Tengo que hacer una consulta a una tabla que me devuelva 10 filas aleatoriamente.
Código: SQL
SELECT*FROM pregunta ORDERBY rand()LIMIT1,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:
Código: SQL
SELECT*FROM pregunta p INNERJOIN(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
Código: SQL
SELECT*FROM pregunta p ORDERBY rand()LIMIT1,10INNERJOIN(SELECT*FROM respuesta )AS resp ON p.id=resp.id