স所周知, SUM() ফাংশন কোনো ম্যাচিং সারি না থাকলে NULL রিটার্ন করে। কিন্তু কখনো কখনো আমরা চাই এটি NULL বদলে শূন্য রিটার্ন করে। এই উদ্দেশ্যে MySQL COALESCE() ফাংশন ব্যবহার করা যায় যা দুটি আর্গুমেন্ট নেয় এবং প্রথম আর্গুমেন্ট NULL হলে দ্বিতীয় আর্গুমেন্ট রিটার্ন করে, অন্যথায় প্রথম আর্গুমেন্ট রিটার্ন করে। 'employee_tbl' টেবিল বিবেচনা করুন, যাতে নিচের রেকর্ডগুলো আছে:
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)
এখন, 'Mohan' নামের ব্যক্তি টাইপ করা মোট পৃষ্ঠা বের করার জন্য COALESCE ফাংশন SUM() সath ব্যবহার করলে ০ রিটার্ন করবে, কারণ 'Name' কলামে 'Mohan' নামটি নেই:
mysql> SELECT COALESCE(SUM(daily_typing_pages),0) AS 'SUM(daily_typing_pages)'
-> FROM employee_tbl WHERE Name = 'Mohan';
+-------------------------+
| SUM(daily_typing_pages) |
+-------------------------+
| 0 |
+-------------------------+
1 row in set (0.00 sec)