দুই ফাংশন দিয়ে NULL হ্যান্ডলিং
MySQL-এ NULL মানকে 0 এ রূপান্তর করতে IFNULL() বা COALESCE() ফাংশন ব্যবহার করা যায়।
সিনট্যাক্স
-- IFNULL (দুই আর্গুমেন্ট)
SELECT IFNULL(yourColumnName, 0) AS aliasName FROM yourTableName;
-- COALESCE (একাধিক আর্গুমেন্ট নেয়)
SELECT COALESCE(yourColumnName, 0) AS aliasName FROM yourTableName;
উদাহরণ (একই টেবিল-दুটি কোয়েরি)
mysql> CREATE TABLE convertNullToZeroDemo (
-> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> Name VARCHAR(20), Salary INT
-> );
mysql> INSERT INTO convertNullToZeroDemo (Name, Salary) VALUES
-> ('John',NULL), ('Carol',5610), ('Bob',NULL), ('David',NULL);
IFNULL ফলাফল
mysql> SELECT IFNULL(Salary, 0) AS CONVERT_NULL_TO_0 FROM convertNullToZeroDemo;
+-------------------+
| CONVERT_NULL_TO_0 |
+-------------------+
| 0 |
| 5610 |
| 0 |
| 0 |
+-------------------+
COALESCE ফলাফল
mysql> SELECT COALESCE(Salary, 0) AS CONVERT_NULL_TO_0 FROM convertNullToZeroDemo;
+-------------------+
| CONVERT_NULL_TO_0 |
+-------------------+
| 0 |
| 5610 |
| 0 |
| 0 +
+-------------------+
পার্থক্য: COALESCE ANSI SQL স্ট্যান্ডার্ড এবং একাধিক আর্গুমেন্ট নেয় (COALESCE(a,b,c,0)), IFNULL শুধু MySQL-এ এবং দুটি আর্গুমেন্ট নেয়।