La lógica es la misma, solo que cruzando ambas tablas:
Código MySQL:
Ver original E.id_ser
P.Nombre Nombres,
FECHA,
fecha_entrada,
IFNULL(E.fecha_Salida_Almuerzo
, 'NO REGISTRA') SALIDAALMUERZO
IFNULL(E.fecha_Entrada_Almuerzo
, 'NO REGISTRA') ENTRADALMUERZO
IFNULL(E.fecha_salida
, 'NO REGISTRA') Salida
, E.Fecha_Ultimo_Registro
Obviamente, estoy suponiendo que tu sistema registra los eventos en un mismo registro. De lo contrario se be hacer todo un proceso y eventualmente algun ajuste de consulta spara lograrlo.
Entiendo perfectamente tu problema porque un sistem aparecido a ese es el que usa nuestra empresa, y tiene precisamente el mismo tipo de inconveniente.
En nuestro caso se solucionó permitiendo que el usuario agregue correcciones (que no borran la información), tal que permita hacer ajustes para eventos no detectados.
Como tood eso luego pasa a aprobación superior, los ajustes (que están parametrizados en su causales), sobn responsailidad de cada empelado. Si miente... es su problema. No del ssitema.