Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-10-2003
Viet Viet is offline
Miembro
 
Registrado: jul 2003
Ubicación: Argentina - Mar del Plata
Posts: 252
Poder: 21
Viet Va por buen camino
Angry 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
Por lo que yo veo esta todo bien, pero en ves de darme el total por grupo para cada empleado, me da por cada empleado, el total que existen por grupo, por cada grupo.

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" ;)
Responder Con Cita
  #2  
Antiguo 16-10-2003
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
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).
Responder Con Cita
  #3  
Antiguo 16-10-2003
Viet Viet is offline
Miembro
 
Registrado: jul 2003
Ubicación: Argentina - Mar del Plata
Posts: 252
Poder: 21
Viet Va por buen camino
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
es practicamente lo mismo o incluso mas simple
__________________
Marín Ignacio Borthiry (Viet) - "El hombre arriesga su vida cada vez que elije y eso es lo que lo hace libre" ;)
Responder Con Cita
  #4  
Antiguo 17-10-2003
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Supongo que será un problema de tecleo, pero en segundo inner join estás utilizando la misma tabla en la comparación.
Responder Con Cita
  #5  
Antiguo 17-10-2003
Viet Viet is offline
Miembro
 
Registrado: jul 2003
Ubicación: Argentina - Mar del Plata
Posts: 252
Poder: 21
Viet Va por buen camino
Thumbs up

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" ;)
Responder Con Cita
  #6  
Antiguo 17-10-2003
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Cita:
Posteado originalmente por Viet
la verdad es que ese tipo de errores me matan ...
Todos los errores fueran como ese
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 12:31:40.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi