Como hacer esta consulta
Hola
Tengo un programa en donde debo realizar un informe de marcado.... la información que debo mostrar viene así (desde una consulta sql logro esto) trabajo con SQL 2000 Server y Delphi 7 E/S Ficha Fecha Hora (Orden de las columnas) 1 1013 17/03/2008 18:00 0 1013 17/03/2008 20:01 1 1013 18/03/2008 17:50 0 1013 18/03/2008 20:11 1 1013 19/03/2008 18:05 0 1013 19/03/2008 19:57 pero necesito mostrar así los datos... E Ficha Fecha Hora S Ficha Fecha Hora 1 1013 17/03/2008 18:00 0 1013 17/03/2008 20:01 1 1013 18/03/2008 17:50 0 1013 18/03/2008 20:11 1 1013 19/03/2008 18:05 0 1013 19/03/2008 19:57 Esto se puede realizar en una consulta SQL ??? bueno, la idea es que me muestre las entrada y salida de un mismo dia.... el otro problema que tengo... es que existen personas que marcan 4 o 6 veces en el día... Si alguien tiene una idea de como realizar esto. ..?? |
Podrías mostrar la estructura de la tabla?
|
Con una subconsulta :
|
Cita:
Tabla: Horario Hor_Numero Numeric -> Incremental Per_Nro Varchar(4) -> Numero asignado al funcionario Hor_Tipo Char(1) -> Tipo de Evento 1 -> Entrada..... 0 -> Salida Hor_Fecha DateTime -> Fecha y Hora del Evento
con la sentencia anterior me entrega esto 1 1013 17/03/2008 18:00 0 1013 17/03/2008 20:01 1 1013 18/03/2008 17:50 0 1013 18/03/2008 20:11 1 1013 19/03/2008 18:05 0 1013 19/03/2008 19:57 |
Ok, lo que necesitamos es ver el movimiento de entrada y salida para cada día de la semana. Sencillo:
Vamos a generar los dominios para cada tipo de evento y para cada día de la semana considerando que en una fecha existen dos movimientos (si existieran más, se tienen que hacer consideraciones adicionales), así que tomaremos como referencia la fecha
Ahora obtenemos el producto de las tablas
Te preguntarás por que left y no inner bueno, sencillamente por que así detectaras a quienes registraron su entrada pero no la salida. Suerte |
Cita:
Ok.. Muchas Gracias... terminando de solucionar unos "cachos" probaré lo que me indicas... Cita:
|
Hola Poliburro
mira.. estas consultas en forma separada funcionan super bien (claro que le modifique por los campos que correspondian...)
y me entregan estos resultados Código:
esta seria la consulta...
y este corresponderia al error Código:
Servidor: mensaje 207, nivel 16, estado 3, línea 1 que podrá ser ??? |
se me olvidaba..
como mencione antes... Lamentablemente existen más de 2 movimiento por día.. y afecta a un 80 % de las personas que tenemos que marcar tarjeta.... será por esto el error ??? |
La franja horaria es GMT +2. Ahora son las 05:15:03. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi