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

MySQL में IFNULL से NULL न होने पर मान लौटाएं, अन्यथा दूसरा कॉलम

IFNULL() के साथ NULL मानों का विकल्प प्रदान करना

जब एक कॉलम NULL हो तो दूसरे कॉलम का मान उपयोग करने के लिए IFNULL(column1, column2) फंक्शन का उपयोग करें। यह COALESCE() का दो-आर्गुमेंट संस्करण है।

टेबल और डेटा

mysql> CREATE TABLE DemoTable (
    FirstName VARCHAR(100),
    LastName VARCHAR(100)
);
Query OK, 0 rows affected (0.62 sec)
mysql> INSERT INTO DemoTable VALUES('John','Doe');
Query OK, 1 row affected (0.29 sec)
mysql> INSERT INTO DemoTable VALUES(NULL,'Taylor');
Query OK, 1 row affected (0.12 sec)
mysql> INSERT INTO DemoTable VALUES('David',NULL);
Query OK, 1 row affected (0.15 sec)
mysql> INSERT INTO DemoTable VALUES(NULL,'Miller');
Query OK, 1 row affected (0.12 sec)

सभी रिकॉर्ड

mysql> SELECT * FROM DemoTable;
+-----------+----------+
| FirstName | LastName |
+-----------+----------+
| John      | Doe      |
| NULL      | Taylor   |
| David     | NULL     |
| NULL      | Miller   |
+-----------+----------+
4 rows in set (0.00 sec)

IFNULL से पहला गैर-NULL मान प्राप्त करना

mysql> SELECT IFNULL(FirstName, LastName) AS Result FROM DemoTable;

परिणाम:

+--------+
| Result |
+--------+
| John   |
| Taylor |
| David  |
| Miller |
+--------+
4 rows in set (0.00 sec)

व्याख्या: पंक्ति 1: FirstName 'John' (NULL नहीं) → 'John'। पंक्ति 2: FirstName NULL → LastName 'Taylor'। पंक्ति 3: FirstName 'David' → 'David'। पंक्ति 4: FirstName NULL → LastName 'Miller'।

विस्तार: दो से अधिक कॉलम के लिए COALESCE(col1, col2, col3, ...) उपयोग करें। यह पहला गैर-NULL मान लौटाता है।

  1. - MySQL में IF() और IS NULL से कॉलम अपडेट करना

    शर्ती कॉलम अपडेट: यदि NULL तो अपडेट करें, अन्यथा नहीं IF() फ़ंक्शन और IS NULL प्रॉपर्टी का उपयोग करके एक कॉलम को अपडेट करें यदि वह NULL है, अन्यथा दूसरा कॉलम अपडेट करें, और यदि दोनों NULL नहीं हैं तो कुछ न करें। पहले टेबल बनाएं और डेटा डालें: mysql> create table DemoTable1976 ( FirstName varchar(

  1. - MySQL में कॉलम मान के पहले अक्षर को प्राप्त करके दूसरे कॉलम में डालें

    समाधान LEFT() फंक्शन का उपयोग करके पहले अक्षर को निकालें और UPDATE से दूसरे कॉलम में स्टोर करें। उदाहरण टेबल बनाएं: INSERT INTO DemoTable2036 (Title) VALUES (Chris), (John), (Adam); अपडेट क्वेरी UPDATE DemoTable2036 SET FirstLetter = LEFT(Title, 1); परिणाम +-------------+-------+ | FirstLetter

  1. - MySQL में मान 0 होने पर दूसरे कॉलम का मान कैसे चुनें?

    IF() फ़ंक्शन का उपयोग यदि किसी कॉलम का मान 0 है तो दूसरे कॉलम का मान लेने के लिए IF() फ़ंक्शन प्रयोग करें: select IF(yourColumnName1=0, yourColumnName2, yourColumnName1) as anyAliasName from yourTableName; टेबल बनाना और डेटा डालना insert into demo30(value,original_value) values(30,0); डेटा देखना