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

MySQLMySQLi Database

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.

raja
Published on 21-Feb-2018 07:11:51
Advertisements