I currently have a table that looks something like this:
+------+-------+------------+------------+
| id | rate | first_name | last_name |
+------+-------+------------+------------+
What I need to do is get the SUM
of the rate column, but only once for each name. For example, I have three rows of name John Doe, each with rate 8. I need the SUM
of those rows to be 8, not 24, so it counts the rate once for each group of names.
SUM(DISTINCT last_name, first_name)
would not work, of course, because I'm trying to sum the rate column, not the names. I know when counting individual records, I can use COUNT(DISTINCT last_name, first_name)
, and that is the type of behavior I am trying to get from SUM
.
How can I get just SUM
one rate for each name?
Thanks in advance!
select sum (rate)
from yourTable
group by first_name, last_name
Edit
If you want to get all sum of those little "sums
", you will get a sum of all table..
Select sum(rate) from YourTable
but, if for some reason are differents (if you use a where
, for example)
and you need a sum for that select above, just do.
select sum(SumGrouped) from
( select sum (rate) as 'SumGrouped'
from yourTable
group by first_name, last_name) T1