IFNULL() के साथ NULL मानों का विकल्प प्रदान करना
जब एक कॉलम NULL हो तो दूसरे कॉलम का मान उपयोग करने के लिए IFNULL(column1, column2) फंक्शन का उपयोग करें। यह COALESCE() का दो-आर्गुमेंट संस्करण है।
टेबल और डेटा
mysql> CREATE TABLE DemoTable (
FirstName VARCHAR(100),
LastName VARCHAR(100)
);
Query OK, 0 rows affected (0.62 sec)
mysql> INSERT INTO DemoTable VALUES('John','Doe');
Query OK, 1 row affected (0.29 sec)
mysql> INSERT INTO DemoTable VALUES(NULL,'Taylor');
Query OK, 1 row affected (0.12 sec)
mysql> INSERT INTO DemoTable VALUES('David',NULL);
Query OK, 1 row affected (0.15 sec)
mysql> INSERT INTO DemoTable VALUES(NULL,'Miller');
Query OK, 1 row affected (0.12 sec)
सभी रिकॉर्ड
mysql> SELECT * FROM DemoTable;
+-----------+----------+ | FirstName | LastName | +-----------+----------+ | John | Doe | | NULL | Taylor | | David | NULL | | NULL | Miller | +-----------+----------+ 4 rows in set (0.00 sec)
IFNULL से पहला गैर-NULL मान प्राप्त करना
mysql> SELECT IFNULL(FirstName, LastName) AS Result FROM DemoTable;
परिणाम:
+--------+ | Result | +--------+ | John | | Taylor | | David | | Miller | +--------+ 4 rows in set (0.00 sec)
व्याख्या: पंक्ति 1: FirstName 'John' (NULL नहीं) → 'John'। पंक्ति 2: FirstName NULL → LastName 'Taylor'। पंक्ति 3: FirstName 'David' → 'David'। पंक्ति 4: FirstName NULL → LastName 'Miller'।
विस्तार: दो से अधिक कॉलम के लिए COALESCE(col1, col2, col3, ...) उपयोग करें। यह पहला गैर-NULL मान लौटाता है।