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

MySQL में NOT NULL मान के लिए 1 सेट करें

MySQL में किसी कॉलम के NOT NULL मान होने पर 1 और NULL होने पर 0 लौटाने के लिए IF() फंक्शन के साथ IS NOT NULL ऑपरेटर का उपयोग करें। यह डेटा वैलिडेशन, रिपोर्टिंग, और कंडीशनल एग्रीगेशन के लिए उपयोगी है।

बुनियादी सिंटैक्स

SELECT IF('' IS NOT NULL, 1, 0) AS anyAliasName;

आउटपुट: 1 (क्योंकि खाली स्ट्रिंग NULL नहीं है)

टेबल के साथ व्यावहारिक उदाहरण

डेमो टेबल बनाएं:

mysql> CREATE TABLE DemoTable1915 (Name VARCHAR(20));

विभिन्न प्रकार के मान इन्सर्ट करें:

mysql> INSERT INTO DemoTable1915 VALUES
('Chris'), (''), ('David'), (NULL);

डेटा:

+-------+
| Name  |
+-------+
| Chris |
|       |  -- खाली स्ट्रिंग
| David |
| NULL  |  -- वास्तविक NULL
+-------+

IF() के साथ क्वेरी:

mysql> SELECT IF(Name IS NOT NULL, 1, 0) AS Result FROM DemoTable1915;

आउटपुट:

+--------+
| Result |
+--------+
| 1      |  -- Chris (NOT NULL)
| 1      |  -- खाली स्ट्रिंग (NOT NULL)
| 1      |  -- David (NOT NULL)
| 0      |  -- NULL
+--------+

महत्वपूर्ण अंतर: खाली स्ट्रिंग vs NULL

  • खाली स्ट्रिंग (''): एक मान है, लंबाई 0, IS NOT NULL = TRUE
  • NULL: मान की अनुपस्थिति, IS NOT NULL = FALSE

वैकल्पिक फंक्शन

COALESCE() - पहला नॉन-NULL मान लौटाता है

SELECT COALESCE(Name, 'N/A') FROM DemoTable1915;

IFNULL() - MySQL-विशिष्ट, दो आर्गुमेंट

SELECT IFNULL(Name, 'N/A') FROM DemoTable1915;

NULLIF() - यदि दोनों बराबर हैं तो NULL लौटाता है

SELECT NULLIF(Name, '') FROM DemoTable1915; -- खाली स्ट्रिंग को NULL बनाता है

एग्रीगेशन में उपयोग

-- नॉन-NULL मानों की गिनती
SELECT COUNT(*) AS total,
       SUM(IF(Name IS NOT NULL, 1, 0)) AS not_null_count
FROM DemoTable1915;

यह तकनीक डेटा क्वालिटी रिपोर्ट, कंडीशनल सम, और ETL पाइपलाइन्स में वैलिडेशन के लिए आवश्यक है।

  1. - MySQL में IFNULL से कॉलम में NULL मानों को विशिष्ट मान से बदलें

    IFNULL(expr, default) फ़ंक्शन का उपयोग करके क्वेरी परिणाम में NULL मानों को निर्दिष्ट डिफ़ॉल्ट मान (जैसे Robert) से बदलें। टेबल बनाएं mysql> CREATE TABLE DemoTable1878 (FirstName VARCHAR(20)); डेटा डालें mysql> INSERT INTO DemoTable1878 VALUES(Chris), (NULL), (David), (NULL); NULL को Robert

  1. - MySQL में ALTER TABLE का उपयोग करके मौजूदा कॉलम पर NOT NULL विशेषता सेट करें

    MySQL में मौजूदा कॉलम को NOT NULL बनाना मौजूदा कॉलम पर NOT NULL प्रतिबंध जोड़ने के लिए, ALTER TABLE ... MODIFY स्टेटमेंट का उपयोग करें जिसमें कॉलम परिभाषा में NOT NULL शामिल हो। टेबल बनाना ); Query OK, 0 rows affected (0.00 sec) UserName पर NOT NULL प्रतिबंध जोड़ना MODIFY UserName VARCHAR(20) NO

  1. - MySQL में IFNULL का उपयोग करके NULL मानों को 1 के रूप में प्रदर्शित/अपडेट करें

    MySQL में NULL मानों को संभालना: IFNULL() और COALESCE() MySQL में IFNULL() फ़ंक्शन का उपयोग करके आप NULL मानों को डिफ़ॉल्ट मान से बदल सकते हैं। यह लेख दिखाता है कि कैसे NULL मानों को 1 से अपडेट करें और उन्हें प्रदर्शित करें। टेबल बनाना ); Query OK, 0 rows affected (0.00 sec) NULL मानों सहित डेटा