It took quite a bit of trial and error, but I finally got it!
SELECT emp, SUM (CASE WHEN earncode IN ('R','C','X') THEN (hi_shift-lo_shift)
ELSE 0 END) AS reghrs, SUM (CASE WHEN earncode IN ('R','C','X') THEN 0 ELSE
(hi_shift-lo_shift) END) AS ovrhrs FROM timesheet GROUP BY emp ORDER BY emp;
At 09:34 AM 9/11/00 -0400, Frank Bax wrote:
>I've got a table containing some timesheet data.
>Fields are emp, earncode, lo_shift, hi_shift.
>
>SELECT emp, sum(hi_shift - lo_shift) as reghrs from timesheet
>where earncode in ('R', 'C', 'X') order by emp
>
>will give me all the regular hours
>
>SELECT emp, sum(hi_shift - lo_shift) as ovrhrs from timesheet
>where earncode not in ('R', 'C', 'X') order by emp
>
>will give me all the overtime hours.
>
>How do I combine these to get one result set with emp, reghrs, ovrhrs on
>each row.
>
>Frank