What are the data types of the columns?I also want to say that the best thing to do is prevent this at the time of entry. This is probably a little sloppy but you might try something like this. I included a sample table variable so I could play with the data more easily.DECLARE @A TABLE(EMPLOYEENAME VARCHAR(5),EMP_ID TINYINT,CLIENTID TINYINT,BEGINDATE VARCHAR(10),STARTTIME VARCHAR(8),ENDTIME VARCHAR(10),SIGNDATE VARCHAR(10),SIGNTIME VARCHAR(8))INSERT @ASELECT 'ABC', 123, 131, '10/16/2009', '11:00:00', '12:30:00', '10/18/2009', '13:11:00' UNION ALLSELECT 'ABC', 123, 132, '10/15/2009', '14:00:00', '15:30:00', '10/16/2009', '11:10:00' UNION ALLSELECT 'ABC', 123, 131, '10/20/2009', '11:00:00', '12:30:00', '10/22/2009', '13:11:00' UNION ALLSELECT 'ABC', 123, 132, '10/19/2009', '14:00:00', '15:30:00', '10/20/2009', '11:10:00' UNION ALL SELECT 'ABC', 123, 131, '11/01/2009', '11:00:00', '12:30:00', '11/02/2009', '13:11:00' UNION ALLSELECT 'ABC', 123, 132, '11/19/2009', '14:00:00', '15:30:00', '11/20/2009', '11:10:00' ;WITH Employee_CTE(EMPLOYEENAME ,EMP_ID ,CLIENTID ,BEGINDATE ,STARTDATETIME ,ENDDATETIME ,SIGNDATETIME ) AS ( SELECT EMPLOYEENAME ,EMP_ID ,CLIENTID ,BEGINDATE ,BEGINDATE +' '+STARTTIME AS StartDateTime ,BEGINDATE +' '+ENDTIME AS EndDateTime ,SIGNDATE +' '+ SIGNTIME AS SignDateTime FROM @A ) SELECT a.EMPLOYEENAME ,a.EMP_ID ,a.CLIENTID ,a.BEGINDATE ,a.STARTDATETIME ,a.ENDDATETIME ,a.SIGNDATETIME FROM Employee_CTE a INNER JOIN ( SELECT EMPLOYEENAME ,EMP_ID ,CLIENTID ,BEGINDATE ,STARTDATETIME ,ENDDATETIME ,SIGNDATETIME FROM Employee_CTE) b ON a.EMP_ID = b.EMP_ID AND a.CLIENTID != b.CLIENTID WHERE CAST(b.SIGNDATETIME AS DATETIME) BETWEEN CAST(a.STARTDATETIME AS DATETIME) AND CAST(a.ENDDATETIME AS DATETIME)
===http://www.ElementalSQL.com/