Ayuda con consulta SQL
Publicado por Manuel Raygoza (4 intervenciones) el 31/07/2008 23:52:35
Que tal. Tengo un problema con una consula. Esta algo complicada para mi.
Por ejemplo. Tengo una consulta que me arroja 155 resultados. Yo necesito hacer una union sobre la misma consulta, pero los demas datos tienen que ir en blanco o por lo menos que contengan una columna que la diferencie de los demas registros. Al momento de hacer la union, en vez de mostrarme 155 registros ahora me arroja 310.
Ejemplo
select * from mibla
union all
select * from mibla
De esta manera me arroja el doble resultado. Hasta aqui vamos bien.
Ahora de acuerdo a cada grupo de registros necesito agregar solo ciertos registros mas.
Ejemplo
id_num - nombre - grupo
1 andrea ax
2 ricardo ax
3 daniel ax
4 Camila XD
5 Victor XD
6 Cesar ax
7 Martin MA
8 Lula MA
9 Gema MA
10 Viky MA
11 Anahí MA
necesito hacer una consulta con todos los datos anteriores Y que me agregue otros registros de acuerdo al grupo. Del primer grupo necesito que me agregue los primeros dos registros, del segundo solo el primer registro y del tercer grupo tres registros.
Deberia quedar de la sig manera
id_num - nombre - grupo
1 andrea ax
2 ricardo ax
3 daniel ax
4 Camila XD
5 Victor XD
6 Cesar ax
7 Martin MA
8 Lula MA
9 Gema MA
10 Viky MA
11 Anahí MA
-------------------------------
1 andrea ax
2 ricardo ax
4 Camila XD
7 Martin MA
8 Lula MA
9 Gema MA
Esto es lo que quiero hacer. ¿se puede? Estoy manejando una condicion en el "where"
ejemplo where ROWNUM <= (n) o el numero que quiero que me muestre. Pero solo me funciona para el primer grupo, pero no se para los diferenctes grupos.
De antemano gracias.
Por ejemplo. Tengo una consulta que me arroja 155 resultados. Yo necesito hacer una union sobre la misma consulta, pero los demas datos tienen que ir en blanco o por lo menos que contengan una columna que la diferencie de los demas registros. Al momento de hacer la union, en vez de mostrarme 155 registros ahora me arroja 310.
Ejemplo
select * from mibla
union all
select * from mibla
De esta manera me arroja el doble resultado. Hasta aqui vamos bien.
Ahora de acuerdo a cada grupo de registros necesito agregar solo ciertos registros mas.
Ejemplo
id_num - nombre - grupo
1 andrea ax
2 ricardo ax
3 daniel ax
4 Camila XD
5 Victor XD
6 Cesar ax
7 Martin MA
8 Lula MA
9 Gema MA
10 Viky MA
11 Anahí MA
necesito hacer una consulta con todos los datos anteriores Y que me agregue otros registros de acuerdo al grupo. Del primer grupo necesito que me agregue los primeros dos registros, del segundo solo el primer registro y del tercer grupo tres registros.
Deberia quedar de la sig manera
id_num - nombre - grupo
1 andrea ax
2 ricardo ax
3 daniel ax
4 Camila XD
5 Victor XD
6 Cesar ax
7 Martin MA
8 Lula MA
9 Gema MA
10 Viky MA
11 Anahí MA
-------------------------------
1 andrea ax
2 ricardo ax
4 Camila XD
7 Martin MA
8 Lula MA
9 Gema MA
Esto es lo que quiero hacer. ¿se puede? Estoy manejando una condicion en el "where"
ejemplo where ROWNUM <= (n) o el numero que quiero que me muestre. Pero solo me funciona para el primer grupo, pero no se para los diferenctes grupos.
De antemano gracias.
Valora esta pregunta


0