FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Consulta - MSSQL -- no hay caso
Buenas
Tengo una consultita que me esta poniendo loco tablas : (aclaracion: este es un modelo simplificado, para que sea mas legible) detalle (id_empleado, id_aplicacion, cantidad) aplicaciones(id_aplicacion, id_grupo) grupos(id_grupo, descripcion) empleados(id_empleado, Nombre) Lo que quiero obtener es la cantidad de aplicaciones por grupo y por empleado mi consulta es: Código:
select e.nombre , g.descripcion , sum(d.cantidad) from detalle d inner join aplicaciones a on (a.id_aplicacion=d.id_aplicacion) inner join grupos g on (g.id_grupo=a.id_grupo) inner join empleados e on (e.id_empleados=d.id_empleado) group by e.nombre, g.descripcion Ejemplo: detalle empleado aplicacion cant 1 1000 5 1 1002 6 2 1000 10 2 1002 7 2 1003 3 empleados id nombre 1 pepe 2 juan aplicaciones id grupo 1000 1 1002 2 1003 1 grupos id descrip 1 grupo1 2 grupo2 esto me tendria que dar nombre grupo cant pepe grupo1 5 pepe grupo2 6 juan grupo1 13 juan grupo2 7 sin embargo me da nombre grupo cant pepe grupo1 18 pepe grupo2 13 juan grupo1 18 juan grupo2 13 Les juro que no he tomado nada con alcohol... y segun mis calculos esto esta muy mal.... la verdad es que no puedo ver donde esta el problema ??? y sin embargo me parece una consulta por demas simple.... Gracias por su tiempo ... y perdonen que es tan largo la consulta pero queria explicar bien el caso..
__________________
Marín Ignacio Borthiry (Viet) - "El hombre arriesga su vida cada vez que elije y eso es lo que lo hace libre" ;) |
#2
|
||||
|
||||
Hola Viet.
Prueba a poner la consulta completa, sin simplificar, porqué esta se ve bien. No le sé encontrar ningun problema. ¿ Tambien falla ? Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#3
|
|||
|
|||
Hola Marc (haber cuando encuentro una consulta tuya asi empiezo a pagarte los favores.... aunque van a tener que ser unas cuantas)
ahi va la consulta Código:
select top 10 e.id_empleado, 0, a.id_grupo_aplicaciones, SUM(ai.callsanswered) AS callsanswered, max(ll.hora) from a_iagentbyapplicationstat ai inner join aplicaciones a on (a.id_aplicacion=ai.applicationid) inner join grupo_aplicaciones g on(a.id_grupo_aplicaciones=a.id_grupo_aplicaciones) inner join empleados e on (e.id_symposium=ai.agentlogin) inner join a_llamadas ll on (ll.id_empleado=e.id_empleado) group by e.id_empleado, a.id_grupo_aplicaciones
__________________
Marín Ignacio Borthiry (Viet) - "El hombre arriesga su vida cada vez que elije y eso es lo que lo hace libre" ;) |
#4
|
|||
|
|||
Supongo que será un problema de tecleo, pero en segundo inner join estás utilizando la misma tabla en la comparación.
|
#5
|
|||
|
|||
Cadetill un millon de gracias !!!.... la verdad es que ese tipo de errores me matan ...
Saludos desde Aquí !
__________________
Marín Ignacio Borthiry (Viet) - "El hombre arriesga su vida cada vez que elije y eso es lo que lo hace libre" ;) |
#6
|
|||
|
|||
Cita:
|
|
|
|