IS NULL से NULL मान वाली पंक्तियां चुनना
किसी कॉलम में NULL मान वाली पंक्तियां प्राप्त करने के लिए WHERE column IS NULL का उपयोग करें। = NULL काम नहीं करता क्योंकि NULL के साथ तुलना हमेशा UNKNOWN होती है।
टेबल और डेटा
mysql> CREATE TABLE DemoTable (
CustomerName VARCHAR(100),
CustomerCountryName VARCHAR(100)
);
Query OK, 0 rows affected (0.95 sec)
mysql> INSERT INTO DemoTable VALUES('Chris','US');
Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO DemoTable VALUES('Bob','UK');
Query OK, 1 row affected (0.10 sec)
mysql> INSERT INTO DemoTable VALUES('Carol',NULL);
Query OK, 1 row affected (0.13 sec)
mysql> INSERT INTO DemoTable VALUES('David','AUS');
Query OK, 1 row affected (0.32 sec)
mysql> INSERT INTO DemoTable VALUES('Mike',NULL);
Query OK, 1 row affected (0.18 sec)
सभी रिकॉर्ड
mysql> SELECT * FROM DemoTable;
+--------------+---------------------+ | CustomerName | CustomerCountryName | +--------------+---------------------+ | Chris | US | | Bob | UK | | Carol | NULL | | David | AUS | | Mike | NULL | +--------------+---------------------+ 5 rows in set (0.00 sec)
NULL देश वाली पंक्तियां
mysql> SELECT * FROM DemoTable WHERE CustomerCountryName IS NULL;
परिणाम:
+--------------+---------------------+ | CustomerName | CustomerCountryName | +--------------+---------------------+ | Carol | NULL | | Mike | NULL | +--------------+---------------------+ 2 rows in set (0.00 sec)
मुख्य नियम: हमेशा IS NULL या IS NOT NULL उपयोग करें। = NULL या != NULL कभी काम नहीं करते। IFNULL() या COALESCE() से NULL को डिफ़ॉल्ट मान से बदलकर भी फ़िल्टर कर सकते हैं।