How can we use MySQL SUM() function to calculate the sum of only dissimilar values of the column?


For calculating the sum of only dissimilar values of the column we can use ‘DISTINCT’ keyword along with the name of the column. To understand SUM() function for dissimilar values, consider an ‘employee_tbl’ table, which is having the following records −

mysql> SELECT * FROM employee_tbl;
+------+------+------------+--------------------+
| id   | name | work_date  | daily_typing_pages |
+------+------+------------+--------------------+
| 1    | John | 2007-01-24 | 250                |
| 2    | Ram  | 2007-05-27 | 220                |
| 3    | Jack | 2007-05-06 | 170                |
| 3    | Jack | 2007-04-06 | 100                |
| 4    | Jill | 2007-04-06 | 220                |
| 5    | Zara | 2007-06-06 | 300                |
| 5    | Zara | 2007-02-06 | 350                |
+------+------+------------+--------------------+
7 rows in set (0.00 sec)

Now, suppose based on the above table you want to calculate the total of all the dialy_typing_pages having dissimilar values, then you can do so by using the following command −

mysql> SELECT SUM(DISTINCT daily_typing_pages)
    -> FROM employee_tbl;
+-------------------------+
| SUM(daily_typing_pages) |
+-------------------------+
|       1390              |
+-------------------------+
1 row in set (0.00 sec)

The above result set shows that MySQL SUM() with a DISTINCT keyword, calculate the sum of only dissimilar record i.e. it adds the value ‘220’ for one time only.

Updated on: 22-Jun-2020

71 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements