Ver Mensaje Individual
  #4 (permalink)  
Antiguo 30/08/2011, 11:28
Avatar de luisito1
luisito1
 
Fecha de Ingreso: junio-2009
Ubicación: Córdoba
Mensajes: 226
Antigüedad: 15 años, 6 meses
Puntos: 2
Respuesta: Case en sql problemon para mi

ya esta resuelto amigo muchisimas gracias... y tenias razon vos con el left.. se los cambie en tres inner join que estaban relacionadas a la tabla inasistencia y en where habia hecho algo mal por que ponia i.fecha (referenciando a inasistenciaA) y lo cambie por ac. fecha (que guarda todas las inasistencias y asistencias del todos los dias)

en fin quedo asi.. (por las dudas alguien tenga algo parecido)

Código PHP:
select m.id_alumno,a.apellido,a.nombre,m.condicion ,
sum(case when e.id_estado=1 then cast(i.cantidad AS decimal(10,1)) end) AS JUSTIFICADAS,
sum(CASE WHEN e.id_estado=2 then cast(i.cantidad AS decimal(10,1)) end) AS INJUSTIFICADAS,
sum(  CAST(i.cantidad as decimal(10,1))) as TOTAL
from alumnos a
inner join matriculas m on  a
.id_alumno =m.id_alumno
left join inasistenciasA i on  a
.id_alumno=i.id_alumno
left join motivos mo on mo
.id_motivoi.id_motivo
left join estados e on e
.id_estadoi.id_estado
inner join AsistenciaCurso ac on ac
.id_curso m.id_curso
where m
.id_curso ='1aCB' and ac.fecha <= '30/08/2011' and ac.fecha >= '20/08/2011' 
group by m.id_alumno,a.apellido,a.nombre,m.condicion 

De nuevo muchisimas gracias por tu tiempo