Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/08/2010, 11:40
devilmaycry18
 
Fecha de Ingreso: agosto-2010
Mensajes: 2
Antigüedad: 13 años, 8 meses
Puntos: 0
Consulta de Vacaciones MYSQL

Buenos dias tengo un problema en una consulta de Asistencia de personal en Mysql haber si me pueden echar una mano
Primero tengo 4 tablas que son:

Usuario:
en donde estan 3 campos sesion, nombre y grupo.

Estado con 2 campos
el campo de estado que es int y el nombre de estado que es varchar.

Detalle_estado:
esta referencia la sesion de usuario y estado, fecha de inicio y fecha de fin.

Hora:

hace referencia sesion de usuario y estado , ingreso , salida.

Mi consulta es esta.
Cita:
SELECT IF(hora.sesion=detalle_estado.sesion AND DATE(ingreso)>=fec_ini AND DATE(ingreso)<=fec_fin,detalle_estado.estado,NULL) AS 'Estado',usuario.sesion,nombre,ingreso,CONCAT(DAY( ingreso),' de ') AS 'ingresod',
CASE MONTH(ingreso)
WHEN 1 THEN 'Enero'
WHEN 2 THEN 'Febero'
WHEN 3 THEN 'Marzo'
WHEN 4 THEN 'Abril'
WHEN 5 THEN 'Mayo'
WHEN 6 THEN 'Junio'
WHEN 7 THEN 'Julio'
WHEN 8 THEN 'Agosto'
WHEN 9 THEN 'Setiembre'
WHEN 10 THEN 'Octubre'
WHEN 11 THEN 'Noviembre'
WHEN 12 THEN 'Diciembre'
END AS 'Ingresom'
,YEAR(ingreso) AS ingresoa,IF(TIME(ingreso)='00:00:00',NULL,TIME(ing reso)) AS 'ingresot', IF (TIME(ingreso)>'09:04:59',(SUBTIME(TIME(ingreso),' 09:04:59')),NULL) AS 'tardanza', IF (TIME(ingreso)='00:00:00','00:00:00',NULL) AS 'falta' FROM hora
JOIN usuario ON usuario.sesion=hora.sesion
JOIN estado ON estado.estado=hora.estado
LEFT JOIN detalle_estado ON detalle_estado.sesion=hora.sesion
ORDER BY ingreso;
pero el resultado me sale 2 resultados uno que sale el correcto resultado el estado, sesion, nombre etc.. y otro donde sale el estado pero null y luego sesion, nombre etc...

de antemano gracias.

pd: en el quote separa ingreso en ing reso en el segundo if grx

Última edición por devilmaycry18; 14/08/2010 a las 12:38