# Cost per hour calculation

I have the following SQL:

SELECT     a_\$, a_hrs, wc
FROM         jobtran
WHERE     (trans_date > '1/1/10') AND (trans_type = 'D') AND (a_hrs > 0)

What I need is to find cost per hour by work center (wc)

'a_\$' is the actual cost for time worked 'a_hrs' . So a_\$ / a_hrs gives me the actual cost per hour. But I need cost per hour by wc
LVL 5
###### Who is Participating?

Commented:
Try:

``````SELECT     wc, SUM(a_\$) / SUM(a_hrs) as CostPerHour
FROM         jobtran
WHERE     (trans_date > '1/1/10') AND (trans_type = 'D') AND (a_hrs > 0)
GROUP BY wc
``````
0

Commented:
``````SELECT     wc, sum(a_\$),sum( a_hrs)
FROM         jobtran
WHERE     (trans_date > '1/1/10') AND (trans_type = 'D') AND (a_hrs > 0)
GROUP BY wc
``````

You'll still need to do the final a_\$ / a_hrs(as this is what you are doing currently)  but I can add it into the SQL if you prefer.

If this isn't what you want then throw up some sample data , and show the output you are after.

0

Commented:
Doh. beat me to it, and did it better....nice
0

Commented:

SELECT wc, sum(a_\$) [Total Cost], sum(a_hrs) [Total Hours], SUM(a_\$) / SUM(a_hrs) * 1.0 [Cost / Hour]
FROM  jobtran
WHERE trans_date > '1/1/10'
AND trans_type = 'D'
AND a_hrs > 0
GROUP BY wc
0

Commented:
As a passing comment, I highly discourage the use of special characters (e.g. \$) and  spaces (other than the under-score character) in database object names.  All it does is cause you headaches as time goes on.

Similarly, one should not use reserved words (e.g. Table, Date, Time, Currency) as object names.

Yes, I know that you can just wrap all of those things in square brackets but why would you want to have to keep doing that? ;-)
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.