Ver Mensaje Individual
  #8 (permalink)  
Antiguo 28/06/2010, 16:42
ralphfm9
 
Fecha de Ingreso: junio-2010
Ubicación: Monterrey, México
Mensajes: 13
Antigüedad: 13 años, 10 meses
Puntos: 0
De acuerdo Respuesta: juntar varios selects

ya quedo el query gracias a speack por su ayuda y paciencia, aqui se los pongo para ver a quien le puede ayudar tambien

select
c1.Nombre ,
c1.Nivel1,
c2.Nivel2,
c3.nivel3,
c4.permiso
from
(
select
P.intPrmLlave,
U.shtUsuLlave,
strUsuNombre Nombre,
strPrmDescripcion as Nivel1
from dbo.catUsuarios U, dbo.relUsuariosPermisos UP, dbo.catPermisos P
where U.shtUsuLlave = UP.shtUsuLlave
and UP.intPrmLlave = P.intPrmLlave
and P.intPrmPadre = 0
) c1
inner join
(
select
P.intPrmLlave,
U.shtUsuLlave,
P.intPrmPadre,
strPrmDescripcion Nivel2
from dbo.catUsuarios U, dbo.relUsuariosPermisos UP, dbo.catPermisos P
where U.shtUsuLlave = UP.shtUsuLlave
and UP.intPrmLlave = P.intPrmLlave
and P.intPrmPadre like '%_0000%'
) c2 on c1.shtUsuLlave = c2.shtUsuLlave
and c1.intPrmLlave = c2.intPrmPadre
inner join
(
select
P.intPrmLlave,
U.shtUsuLlave,
P.intPrmPadre,
strPrmDescripcion nivel3
from dbo.catUsuarios U, dbo.relUsuariosPermisos UP, dbo.catPermisos P
where U.shtUsuLlave = UP.shtUsuLlave
and UP.intPrmLlave = P.intPrmLlave
and P.intPrmPadre like '%000'
and P.intPrmPadre not like '%_0000%'
)c3 on c1.shtUsuLlave = c3.shtUsuLlave
and c2.intPrmLlave = c3.intPrmPadre
inner join
(
select
P.intPrmLlave,
U.shtUsuLlave,
P.intPrmPadre,
strPrmDescripcion permiso
from dbo.catUsuarios U, dbo.relUsuariosPermisos UP, dbo.catPermisos P
where U.shtUsuLlave = UP.shtUsuLlave
and UP.intPrmLlave = P.intPrmLlave
and P.intPrmPadre not like '%000'
and P.intPrmPadre not like '%_0000%'
and P.intPrmPadre != 0
) c4 on c1.shtUsuLlave = c4.shtUsuLlave
and c3.intPrmLlave = c4.intPrmPadre
--where c2.Nombre = c1.Nombre
group by c1.Nombre, c1.Nivel1, c2.Nivel2, c3.nivel3, c4.permiso, c3.intPrmLlave, c4.intPrmLlave
order by c1.Nombre, c3.intPrmLlave, c4.intPrmLlave