IFNULL() फ़ंक्शन का उपयोग
MySQL में NULL मान को डिफ़ॉल्ट मान (जैसे 0) में बदलने के लिए IFNULL() फ़ंक्शन का उपयोग करें।
सिंटैक्स
SELECT IFNULL(yourColumnName, 0) AS anyVariableName
FROM yourTableName;
IFNULL(expr, default) - यदि expr NULL नहीं है तो expr लौटाता है, अन्यथा default लौटाता है।
व्यावहारिक उदाहरण
1. टेबल बनाएं और NULL मान डालें
mysql> CREATE TABLE TypecastDemo (
-> AccountNumber INT
-> );
Query OK, 0 rows affected (0.84 sec)
mysql> INSERT INTO TypecastDemo VALUES(NULL);
mysql> INSERT INTO TypecastDemo VALUES(1234);
mysql> INSERT INTO TypecastDemo VALUES(9876);
mysql> INSERT INTO TypecastDemo VALUES(6666);
mysql> INSERT INTO TypecastDemo VALUES(NULL);
mysql> INSERT INTO TypecastDemo VALUES(NULL);
mysql> INSERT INTO TypecastDemo VALUES(3214);
2. मूल डेटा देखें
mysql> SELECT * FROM TypecastDemo;
+---------------+
| AccountNumber |
+---------------+
| NULL |
| 1234 |
| 9876 |
| 6666 |
| NULL |
| NULL |
| 3214 |
+---------------+
7 rows in set (0.00 sec)
3. NULL को 0 में बदलें
mysql> SELECT IFNULL(AccountNumber, 0) AS TypeCastNullToZero
-> FROM TypecastDemo;
+--------------------+
| TypeCastNullToZero |
+--------------------+
| 0 |
| 1234 |
| 9876 |
| 6666 |
| 0 |
| 0 |
| 3214 |
+--------------------+
7 rows in set (0.00 sec)
बहु-कॉलम के लिए COALESCE()
यदि एकाधिक कॉलम में से पहला गैर-NULL मान चाहिए, तो COALESCE() का उपयोग करें:
SELECT COALESCE(col1, col2, col3, 0) AS first_non_null
FROM yourTable;
यह बाएं से दाएं पहला गैर-NULL मान लौटाता है, या सभी NULL होने पर 0।
अंतर सारांश
| फ़ंक्शन | पैरामीटर | उपयोग |
|---|---|---|
IFNULL | 2 | सिंगल कॉलम के लिए डिफ़ॉल्ट मान |
COALESCE | 2+ | एकाधिक कॉलम/मान में से पहला गैर-NULL |
NULLIF | 2 | यदि दो मान समान हों तो NULL लौटाए |