Ver Mensaje Individual
  #3 (permalink)  
Antiguo 08/11/2012, 11:42
RabidFish
 
Fecha de Ingreso: julio-2008
Ubicación: Córdoba, Argentina
Mensajes: 266
Antigüedad: 16 años, 5 meses
Puntos: 26
Respuesta: Consulta de certificados médicos sin inasistencias asociadas

Hola.

No pretendo que hagan el trabajo por mí. Lo que tengo hasta ahora es la consulta que pongo a continuación, pero ésta sólo me trae los certificados médicos que no tienen la totalidad de las inasistencias cargadas, pero tienen al menos una. Lo que me falta es obtener los certificados que no tienen NINGUNA inasistencia asociada, según el rango de fechas que cubre el certificado y la fecha de cada inasistencia. No tengo idea de cómo encararlo y por eso pido ayuda.

Código:
SELECT certificado_medico.* 
FROM certificado_medico
INNER JOIN empleado ON certificado_medico.id_empleado = empleado.id_empleado
INNER JOIN
(SELECT certificado_medico.id, COUNT(*) AS 'cantidad' 
FROM inasistencia
INNER JOIN certificado_medico ON inasistencia.id_empleado = certificado_medico.id_empleado
WHERE inasistencia.fecha BETWEEN certificado_medico.fecha_inicio_vigencia AND DATE_ADD(certificado_medico.fecha_inicio_vigencia, INTERVAL(certificado_medico.dias_reposo - 1) day)
GROUP BY certificado_medico.id) AS cantidad_inasistencias
ON cantidad_inasistencias.id_certificado_medico = certificado_medico.id
WHERE dias_reposo > cant_inas.cantidad
ORDER BY certificado_medico.fecha_inicio_vigencia ASC
Un saludo.

Última edición por RabidFish; 08/11/2012 a las 11:49