|    
			
				25/12/2011, 16:05
			
			
			  | 
  |   |  |  |  Fecha de Ingreso: diciembre-2011 
						Mensajes: 5
					 Antigüedad: 13 años, 10 meses Puntos: 0 |  | 
  |  Respuesta: Curioso Problema(¿SQL puede hacerlo?)  
  Lo cierto es que nos da error de sintaxis:La tabla se llama EVENT_LOG, y los campos son:
 EVENT_TIME para la hora, formato 120023, para las 12 horas, cero minutos, veintitrés segundos.
 EVENT_DATE para la fecha, formato 01112011, para el uno de noviembre de 2011.
 USER_ID, para el id del usuario.
 Llevamos varias horas intentando sacar algo, pero siempre nos da error.
 Nos encantaría trabajar bajo MySQL o Posgres, pero estamos bajo Access 2003, por cuestiones de requisitos de escenario, y tampoco podemos insertar los datos de DATE y TIME de otra forma.
 El código es el siguiente:
 
 
 
 SELECT
 h.EVENT_DATE,
 h.USER_ID,
 min(hem.hora) AS 'entrada mañana',
 max(hsm.hora) AS 'salida mañana',
 min(het.hora) AS 'entrada tarde',
 max(hst.hora) AS 'salida tarde'
 FROM EVENT_LOG h
 LEFT JOIN h hem ON h.USER_ID = hem.USER_ID AND hem.hora < 090000
 LEFT JOIN h hsm ON h.USER_ID = hsm.USER_ID AND hsm.hora BETWEEN 090001 AND 150000
 LEFT JOIN h het ON h.USER_ID = het.USER_ID AND het.hora BETWEEN 150001 AND 160000
 LEFT JOIN h hst ON h.USER_ID = hst.USER_ID AND hst.hora > 160001
 WHERE EVENT_LOG.EVENT_DATE = 01112011
 GROUP BY USER_ID,EVENTLOG_TBL. EVENT_DATE;
 
 PD: Sería la leche convertir el DATE en formato fecha y el TIME en formato hora, pero contando en que no sacamos esto, ya es complicada la conversión.
     |