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

MySQL में NULL मान वाले डेटा के लिए SELECT क्वेरी

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 को डिफ़ॉल्ट मान से बदलकर भी फ़िल्टर कर सकते हैं।

  1. - MySQL में INSERT ... SELECT क्वेरी का उपयोग कैसे करें?

    MySQL में INSERT ... SELECT स्टेटमेंट एक ही क्वेरी में एक तालिका से दूसरी तालिका में डेटा कॉपी करने या मानों की गणना करके डालने की अनुमति देता है। सिंटैक्स INSERT INTO target_table (col1, col2, col3, ...) SELECT col1, col2, col3, ... FROM source_table WHERE condition; उदाहरण: मानों को सीधे चुनकर ड

  1. - MySQL में IFNULL/COALESCE से कई कॉलम में NULL को खाली स्ट्रिंग से बदलें

    क्वेरी परिणाम में NULL मानों को खाली स्ट्रिंग (या अन्य डिफ़ॉल्ट) से बदलने के लिए IFNULL() या COALESCE() का उपयोग करें। टेबल बनाएं mysql> CREATE TABLE DemoTable1849 ( ClientFirstName VARCHAR(20), ClientLastName VARCHAR(20) ); डेटा डालें (NULL मान सहित) mysql> INSERT INTO DemoTable1849

  1. - MySQL में टेबल A की तुलना में टेबल B में नहीं होने पर टेबल C में डेटा डालें

    समाधान टेबल A और B पर LEFT JOIN का उपयोग करें, जहां B में मेल नहीं खाता वहां के रिकॉर्ड टेबल C में डालें। उदाहरण टेबल A (demo20): INSERT INTO demo20 VALUES (100,John), (101,Bob), (102,Mike), (103,Carol); टेबल B (demo21): INSERT INTO demo21 VALUES (100,Sam), (101,Adam), (133,Bob), (145,David); ट