आप 0 को NULL से बदलने के लिए MySQL से NULLIF () का उपयोग कर सकते हैं। वाक्य रचना इस प्रकार है -
SELECT *,NULLIF(yourColumnName,0) as anyVariableName from yourTableName;
उपरोक्त वाक्य रचना को समझने के लिए, आइए एक तालिका बनाते हैं। तालिका बनाने की क्वेरी इस प्रकार है -
mysql> create table Replace0WithNULLDemo -> ( -> Id int NOT NULL auto_increment, -> Name varchar(20), -> Marks int, -> PRIMARY KEY(Id) -> ); Query OK, 0 rows affected (0.53 sec)
अब आप इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डाल सकते हैं। क्वेरी इस प्रकार है -
mysql> insert into Replace0WithNULLDemo(Name,Marks) values('John',76); Query OK, 1 row affected (0.16 sec) mysql> insert into Replace0WithNULLDemo(Name,Marks) values('Carol',86); Query OK, 1 row affected (0.20 sec) mysql> insert into Replace0WithNULLDemo(Name,Marks) values('Sam',0); Query OK, 1 row affected (0.17 sec) mysql> insert into Replace0WithNULLDemo(Name,Marks) values('Mike',0); Query OK, 1 row affected (0.16 sec) mysql> insert into Replace0WithNULLDemo(Name,Marks) values('Larry',98); Query OK, 1 row affected (0.19 sec) mysql> insert into Replace0WithNULLDemo(Name,Marks) values('Bob',0); Query OK, 1 row affected (0.17 sec)
चयन कथन का उपयोग करके तालिका से रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है -
mysql> select *from Replace0WithNULLDemo;
निम्न आउटपुट है -
+----+-------+-------+ | Id | Name | Marks | +----+-------+-------+ | 1 | John | 76 | | 2 | Carol | 86 | | 3 | Sam | 0 | | 4 | Mike | 0 | | 5 | Larry | 98 | | 6 | Bob | 0 | +----+-------+-------+ 6 rows in set (0.00 sec)
आइए अब 0 को NULL से बदलें। क्वेरी इस प्रकार है -
mysql> select *,NULLIF(Marks,0) as ReplaceZeroWithNULL from Replace0WithNULLDemo;
निम्नलिखित एक नया कॉलम प्रदर्शित करने वाला आउटपुट है जिसमें नए ने 0 को NULL से बदल दिया है -
+----+-------+-------+---------------------+ | Id | Name | Marks | ReplaceZeroWithNULL | +----+-------+-------+---------------------+ | 1 | John | 76 | 76 | | 2 | Carol | 86 | 86 | | 3 | Sam | 0 | NULL | | 4 | Mike | 0 | NULL | | 5 | Larry | 98 | 98 | | 6 | Bob | 0 | NULL | +----+-------+-------+---------------------+ 6 rows in set (0.00 sec)