Tengo una duda, tengo 2 tablas 1 que me indica las horas y días que un trabajador debe tener. ( " Select * from PS_CPR_TEMP0007 " )
y la segunda que es donde se guardan los registros del trabajador días y horas de ingreso y salida. ( "Select * from PS_CPR_TEMP0006 = )
LA DUDA ES: si un trabajador tiene 4 registros, 2 de entrada y 2 de salida en un día, no puedo usar el MIN () ni el MAX () ya que me traería el primer y ultimo valor.
COMO PODRIA HACER ???
LES DEJO LOS CODIGOS
Código SQL:
Ver original
SELECT * FROM PS_CPR_TEMP0007 --Horario por dias y calendario INSERT INTO PS_CPR_TEMP0007 ( PROCESS_INSTANCE , EMPLID , EMPL_RCD , BUSINESS_UNIT , START_DT , DAYOFWK_MON , FLAG , CPR_FST_ASG_FLD , STRT_STOP_DIFF , START_TIME , END_TIME , KZN_CR_IDNM ) SELECT A.PROCESS_INSTANCE , B.EMPLID , B.EMPL_RCD , B.BUSINESS_UNIT , A.START_DT , A.DAYOFWK_MON , B.FLAG , B.CPR_FST_ASG_FLD , B.STRT_STOP_DIFF , B.START_TIME , B.END_TIME , B.KZN_CR_IDNM FROM PS_CPR_TEMP0005 A , PS_CPR_TEMP0003 B WHERE A.DAYOFWK_MON = B.DAYOFWK_MON AND A.PROCESS_INSTANCE = B.PROCESS_INSTANCE AND A.PROCESS_INSTANCE = %ProcessInstance ORDER BY B.EMPLID, B.EMPL_RCD, A.START_DT, B.START_TIME SELECT * FROM PS_CPR_TEMP0006 --Marca Realizadas por dia INSERT INTO PS_CPR_TEMP0006 ( PROCESS_INSTANCE , EMPLID , EMPL_RCD , COMPANY , NRO_TARJETA_ETB , KZNPE12_TLE011 , DATE1 , START_TIME , KZN_DSC_RELOJ , SEQ_NBR , FLAG , DAYOFWK_MON) SELECT A.PROCESS_INSTANCE , A.EMPLID , A.EMPL_RCD , A.COMPANY , A.NRO_TARJETA_ETB , A.KZNPE12_TLE011 , A.DATE1 , A.START_TIME , A.KZN_DSC_RELOJ , A.SEQ_NBR , A.FLAG , B.DAYOFWK_MON FROM PS_CPR_TEMP0004 A , PS_CPR_TEMP0005 B WHERE A.PROCESS_INSTANCE = B.PROCESS_INSTANCE AND A.DATE1 = B.START_DT AND A.PROCESS_INSTANCE = %ProcessInstance