DECLARE @cJobNo as VARCHAR(10) SET @cJobNo = '11709' SELECT TimeHD.Empid, TimeHD.EmpName, sum(regtime) as RegTime,sum(overtime) as OverTime, Sum(doubletime) as DoubleTime, sum(regtime+overtime+doubletime) as TotalHours1, '0' as Dist FROM TimeHd INNER JOIN TimeItms ON TimeHd.timecrdno = TimeItms.timecrdno Where TimeItms.JobNo = @cJobNo and TimeItms.[distributed] <> 1 group by TimeHD.Empid, TimeHD.EmpName UNION ALL SELECT TimeHD.Empid, TimeHD.EmpName, sum(regtime) as RegTime,sum(overtime) as OverTime, Sum(doubletime) as DoubleTime, sum(regtime+overtime+doubletime) as TotalHours1, '1' as Dist FROM TimeHd INNER JOIN TimeItms ON TimeHd.timecrdno = TimeItms.timecrdno Where TimeItms.JobNo = @cJobNo and TimeItms.[distributed] = 1 group by TimeHD.Empid, TimeHD.EmpName order by empid, Dist>You cannot expect records to be in any particular order w/o ORDER BY clause. Add one more column, put 1 for the first select and 2 for second select and ORDER BY on it.