Hola Amigos!
Tengo una pregunta, acerca de como hacer u organizar una consulta con un select que realizo.
Explico:
Tengo 3 Tablas y sus campos
sisPerfiles
tCodPerfil
tCodEstatus
sisUsuarios
eCodUsuario
tCodPerfil
sisSeccionesPerfiles
tCodSeccion
tCodPerfil
Las tablas de sisUsuarios y sisSeccionesPerfiles las vinculo con sisPerfiles, donde un nuevo usuario y una nueva seccione se le asigna un perfil de la tabla sisPerfiles.
En la consulta, se busca obtener cuantos usuarios y secciones se encuentran dados de alta con los perfiles que ya existen.
Aqui mi consulta:
SELECT * FROM (
SELECT sp.tCodEstatus AS Estatus, sp.tCodPerfil, count(su.tCodPerfil) AS NumeroUsuarios,
count(ss.tCodPerfil) AS NumeroSecciones
FROM sisPerfiles sp
LEFT JOIN sisUsuarios su ON sp.tCodPerfil = su.tCodPerfil
LEFT JOIN sisSeccionesPerfiles ss ON sp.tCodPerfil = ss.tCodPerfil
GROUP BY sp.tCodEstatus, sp.tCodPerfil) AS n1
WHERE Estatus !='EL'
Aqui mis datos:
sisPerfiles
tCodPerfil | tEstatus
Perfil1-------AC
Perfil2-------AC
Perfil3-------AC
sisUsuarios
eCodUsuario | tCodPerfil
Usuario1-------Perfil1
Usuario1-------Perfil1
Usuario2-------Perfil2
Usuario3-------Perfil2
Usuario4-------Perfil3
sisSeccionesPerfiles
tCodSeccion | tCodPerfil
Seccion1-------Perfil1
Seccion1-------Perfil1
Seccion1-------Perfil1
Seccion1-------Perfil1
Seccion1-------Perfil1
Seccion1-------Perfil1
Seccion2-------Perfil2
Seccion2-------Perfil2
Seccion2-------Perfil2
Seccion3-------Perfil3
y este es el resultado de mi select:
Estatus | tCodPerfil | NumeroUsuarios | NumeroSecciones
AC ----- Perfil1 ------- 12 ------- 12
AC ----- Perfil2 -------- 6 -------- 6
AC ----- Perfil3 -------- 1 -------- 1
el error que muestra al momento de dar los resultados, multiplica el numero de ususarios por el numero de secciones y el resultado se muestra en esos mismos, ya que la Perfil1 tiene 2 usuarios y 6 secciones 2X6=12
la Perfil2 tiene 2 usuarios y 3 secciones 2X3=6
y la Perfil3 tiene 1 usuario y 1 sección 1X1=1
alguien puede ayudarme con mi consulta¿?
de ante mano, gracias!!