Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में NULLIF() से केवल खाली सेल को NULL करें, सभी सेल नहीं

MySQL NULLIF(): खाली स्ट्रिंग को NULL में बदलना, अन्य मान अपरिवर्तित

NULLIF(expr1, expr2) फंक्शन यदि expr1 = expr2 तो NULL लौटाता है, अन्यथा expr1। यह खाली स्ट्रिंग ('') को NULL में बदलने के लिए आदर्श है बिना अन्य मानों को प्रभावित किए।

उदाहरण: केवल खाली नाम को NULL करें

टेबल बनाएं:

CREATE TABLE DemoTable (Name VARCHAR(50));
INSERT INTO DemoTable VALUES ('Mike'), (''), ('David'), (''), ('Mike');

डेटा:

+-------+
| Name  |
+-------+
| Mike  |
|       |
| David |
|       |
| Mike  |
+-------+

NULLIF से अपडेट

UPDATE DemoTable SET Name = NULLIF(Name, '');

परिणाम:

Query OK, 2 rows affected (0.19 sec)
Rows matched: 5  Changed: 2  Warnings: 0

जांचें

SELECT * FROM DemoTable;
+-------+
| Name  |
+-------+
| Mike  |
| NULL  |
| David |
| NULL  |
| Mike  |
+-------+

यह कैसे काम करता है?

  • NULLIF(Name, '') — यदि Name = '' तो NULL, अन्यथा Name (मूल मान)
  • केवल खाली स्ट्रिंग प्रभावित होती है
  • 'Mike', 'David' अपरिवर्तित रहते हैं

तुलना: गलत तरीका (सभी NULL हो जाएंगे)

-- 0 को NULL में बदलें (गणना में उपयोगी)
NULLIF(Quantity, 0)

-- विशिष्ट स्ट्रिंग को NULL में
NULLIF(Status, 'N/A')

-- विभाजन में शून्य से बचाव
SELECT 100 / NULLIF(Count, 0) AS Avg -- Count=0 पर NULL लौटाएगा, त्रुटि नहीं
  1. - MySQL में खाली कॉलम फ़ील्ड को NULL मानना

    खाली स्ट्रिंग को NULL में बदलना कभी-कभी डेटा में खाली स्ट्रिंग () होती है जिसे तार्किक रूप से NULL माना जाना चाहिए। इसे UPDATE के साथ ठीक किया जा सकता है। तालिका और डेटा INSERT INTO DemoTable1362(ClientName) VALUES(NULL); खाली स्ट्रिंग को NULL में अपडेट करना WHERE ClientName = OR LENGTH(Client

  1. - MySQL में खाली मानों को NULL में कैसे अपडेट करें?

    MySQL में खाली स्ट्रिंग () को NULL में बदलने के लिए IF() फ़ंक्शन के साथ UPDATE स्टेटमेंट का उपयोग करें। यह डेटा सफाई और मानकीकरण के लिए उपयोगी है। सिंटैक्स UPDATE table_name SET column_name = IF(column_name = , NULL, column_name); उदाहरण तालिका बनाएं और डेटा डालें: mysql> CREATE TABLE DemoTabl

  1. - MySQL में NULL या नॉन-NULL मानों वाले टेबल के सभी फील्ड अपडेट करें

    आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable -> ( -> Id int, -> Name varchar(20) -> ); Query OK, 0 rows affected (0.58 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysql> insert into DemoTable values(10,NULL); Query OK, 1 row affected (0.32 sec) mysql&