Ver Mensaje Individual
  #4 (permalink)  
Antiguo 14/01/2009, 13:19
chelodelsur
 
Fecha de Ingreso: abril-2008
Mensajes: 208
Antigüedad: 16 años
Puntos: 2
Respuesta: Select anidados???

otra vez yo

He hecho una variación de la consulta anterior, la idea es agrupar por mes (la anterior era para el año) pero no me hace la suma del selec anidado

Código:
Select
distinct a.agente_evaluado AGENTE,
Year(Fecha_evaluacion) as 'Año',
CASE 
WHEN MONTH(fecha_evaluacion) = 1 THEN "enero"
WHEN MONTH(fecha_evaluacion) = 2 THEN "febrero"
WHEN MONTH(fecha_evaluacion) = 3 THEN "marzo"
WHEN MONTH(fecha_evaluacion) = 4 THEN "abril"
WHEN MONTH(fecha_evaluacion) = 5 THEN "mayo"
WHEN MONTH(fecha_evaluacion) = 6 THEN "junio"
WHEN MONTH(fecha_evaluacion) = 7 THEN "julio"
WHEN MONTH(fecha_evaluacion) = 8 THEN "agosto"
WHEN MONTH(fecha_evaluacion) = 9 THEN "septiembre"
WHEN MONTH(fecha_evaluacion) = 10 THEN "octubre"
WHEN MONTH(fecha_evaluacion) = 11 THEN "noviembre"
WHEN MONTH(fecha_evaluacion) = 12 THEN "diciembre"
ELSE "NUUL_MES" END  AS MES ,
SUM(IF(ID_LLAMADA>0,1,0))'TOTAL EVALUACIONES',
ID_LLAMADA'id EVALUACIONES',
(select 
    count(b.errores_fatales)
    from evaluaciones d
    inner join notas_evaluaciones b
    on d.id_evaluacion = b.id_evaluacion
    where (d.identifica_cliente='1'OR d.escucha_activa='1' OR d.asesorar='1'
    OR d.conocimiento_producto='1' OR d.procedimientos='1' OR d.ingreso_datos='1')
    and d.agente_evaluado=a.agente_evaluado
    and d.id_evaluacion = a.id_evaluacion) as 'TOT EVAL CON ERRORES FATALES',
SUM(b.errores_fatales) as 'TOT ERRORES FATALES',
format(avg(b.NOTA_AREA_1),1) `ESTILO MANEJO LLAMADA`,
format(avg(b.NOTA_AREA_2),1) `ESTRUCTURA / HABILIDADES`,
format(avg(b.NOTA_AREA_3),1) `EFICIENCIA / CONOCIMIENTO`,
format(avg(b.NOTA_EVALUACION),1) `NOTA FINAL`
FROM evaluaciones a
INNER JOIN notas_evaluaciones b
ON a.id_evaluacion = b.id_evaluacion
left join agentes c
oN a.agente_evaluado = c.nombre_agente
where a.fecha_evaluacion between '2008/01/01' and  '2008/12/31'
And a.agente_evaluado like'aguilar pacheco doris' 
and c.estado='activo'
and (c.tipo_turno='full time' or c.tipo_turno='part time')
GROUP BY  a.id_evaluacion
ORDER BY `agente_evaluado` asc, fecha_evaluacion asc;
em esta consulta mientras el Group by es por id_evaluación, me lista todos los registros, pero al cambiar el agrupamiento a mes, solo me lista el primer registro del mes, por lo que la columna 'TOT EVAL CON ERRORES FATALES' que sale del select anidado no entrega valores reales.

que falta??

una vez más gracias

Chelo