Suppose my table contains the following:
ID price
-------------
1 10
1 10
2 20
2 20
3 30
3 30
Each time through a while loop. I want to get the sum of the values on price but only once for every distinct value in ID
So given the example above, I would arrive with something like:
ID price
-------------
1 20
2 40
3 60
Just to add, I may have stumble upon a post with a similar inquiry. Problem is that other post uses Oracle, I on the other hand am using MySQL.
The SQL Server SUM() function is an aggregate function that calculates the sum of all or distinct values in an expression. In this syntax: ALL instructs the SUM() function to return the sum of all values including duplicates. ALL is used by default.
You can use the SUM() function in a SELECT with JOIN clause to calculate the sum of values in a table based on a condition specified by the values in another table.
You can specify either ALL or DISTINCT modifier in the SUM() function. The DISTINCT modifier instructs the SUM() function to calculate the total of distinct values, which means the duplicates are eliminated. The ALL modifier allows the SUM() function to return the sum of all values including duplicates.
You need GROUP BY
and SUM
SELECT ID,
SUM(price) AS price
FROM YourTable
GROUP BY ID
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With