Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL ISNULL () समझाया गया

MySQL में, ISNULL() फ़ंक्शन हमें यह जांचने में सक्षम बनाता है कि कोई मान null है या नहीं या नहीं। अगर यह null है , फिर 1 लौटा दिया जाता है, अन्यथा 0 लौटा दिया गया है।

सिंटैक्स

ISNULL(expr)

उदाहरण

प्रदर्शित करने के लिए यहां एक सरल उदाहरण दिया गया है:

SELECT ISNULL( null );

परिणाम:

1

इस मामले में, व्यंजक null है और इसलिए आउटपुट 1 . है ।

यहाँ यह एक गैर-null . के साथ है मूल्य:

SELECT ISNULL( 'Cake' );

परिणाम:

0

इस बार परिणाम 0 . है (क्योंकि व्यंजक null नहीं है )।

अभिव्यक्ति

ISNULL() किसी भी अभिव्यक्ति के परिणाम की जाँच करता है। इसलिए यदि हम निम्न कार्य करते हैं, उदाहरण के लिए:

SELECT ISNULL( 3 / 0 );

हमें यह मिलता है:

1

इसलिए हालांकि हमने null . निर्दिष्ट नहीं किया है तर्क के रूप में, व्यंजक का परिणाम null है , और इसलिए ISNULL() रिटर्न 1

इसे अगले उदाहरण से और अधिक स्पष्ट रूप से प्रदर्शित किया जा सकता है:

SELECT 
    3 / 0,
    ISNULL( 3 / 0 );

परिणाम:

+-------+-----------------+
| 3 / 0 | ISNULL( 3 / 0 ) |
+-------+-----------------+
|  NULL |               1 |
+-------+-----------------+
1 row in set, 2 warnings (0.00 sec)

पहले कॉलम में हम देख सकते हैं कि गणना के परिणामस्वरूप एक शून्य मान आया, और इसलिए दूसरा कॉलम 1 वापस आ गया। ।

जब हम इस पर काम कर रहे होते हैं, तब ये चेतावनियां दी जाती हैं:

SHOW WARNINGS

परिणाम:

+---------+------+---------------+
| Level   | Code | Message       |
+---------+------+---------------+
| Warning | 1365 | Division by 0 |
| Warning | 1365 | Division by 0 |
+---------+------+---------------+

हमें चेतावनी दी गई है कि हमने शून्य से विभाजित करने का प्रयास किया (जिसके परिणामस्वरूप एक शून्य मान होता है)।

डेटाबेस उदाहरण

मान लीजिए हमारे पास इस तरह की एक डेटाबेस तालिका है:

SELECT * FROM Pets;

परिणाम:

+-------+-----------+---------+---------+------------+
| PetId | PetTypeId | OwnerId | PetName | DOB        |
+-------+-----------+---------+---------+------------+
|     1 |         2 |       3 | Fluffy  | 2020-11-20 |
|     2 |         3 |       3 | Fetch   | 2019-08-16 |
|     3 |         2 |       2 | Scratch | 2018-10-01 |
|     4 |         3 |       3 | Wag     | 2020-03-15 |
|     5 |         1 |       1 | Tweet   | 2020-11-28 |
|     6 |         3 |       4 | Fluffy  | 2020-09-17 |
|     7 |         3 |       2 | Bark    | NULL       |
|     8 |         2 |       4 | Meow    | NULL       |
|     9 |         3 |       1 | Woof    | 2020-10-03 |
|    10 |         4 |       5 | Ears    | 2022-01-11 |
+-------+-----------+---------+---------+------------+

यहां एक क्वेरी है जो ISNULL() . का उपयोग करती है उस तालिका के विरुद्ध कार्य करें:

SELECT
    PetId,
    PetName,
    ISNULL( DOB ) AS "DOB is Missing?"
FROM Pets;

परिणाम:

+-------+---------+-----------------+
| PetId | PetName | DOB is Missing? |
+-------+---------+-----------------+
|     1 | Fluffy  |               0 |
|     2 | Fetch   |               0 |
|     3 | Scratch |               0 |
|     4 | Wag     |               0 |
|     5 | Tweet   |               0 |
|     6 | Fluffy  |               0 |
|     7 | Bark    |               1 |
|     8 | Meow    |               1 |
|     9 | Woof    |               0 |
|    10 | Ears    |               0 |
+-------+---------+-----------------+

उस स्थिति में, हमने एक कॉलम बनाया जो 1 . प्रदर्शित करता है उन सभी पालतू जानवरों के लिए जिनके जन्म तिथि कॉलम में कुछ भी नहीं है।

मान लें कि हम उन सभी पालतू जानवरों को वापस करना चाहते हैं जिनकी जन्म तिथि सूचीबद्ध नहीं है (अर्थात उनका DOB फ़ील्ड null है ) इस मामले में, हम निम्न कार्य कर सकते हैं:

SELECT * FROM Pets
WHERE ISNULL(DOB) = 1;

परिणाम:

+-------+-----------+---------+---------+------+
| PetId | PetTypeId | OwnerId | PetName | DOB  |
+-------+-----------+---------+---------+------+
|     7 |         3 |       2 | Bark    | NULL |
|     8 |         2 |       4 | Meow    | NULL |
+-------+-----------+---------+---------+------+

यह निम्न कार्य करने जैसा ही परिणाम देता है:

SELECT * FROM Pets
WHERE DOB IS NULL;

परिणाम:

+-------+-----------+---------+---------+------+
| PetId | PetTypeId | OwnerId | PetName | DOB  |
+-------+-----------+---------+---------+------+
|     7 |         3 |       2 | Bark    | NULL |
|     8 |         2 |       4 | Meow    | NULL |
+-------+-----------+---------+---------+------+


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. JSON_STORAGE_SIZE () - MySQL में JSON दस्तावेज़ का संग्रहण आकार खोजें

  2. घंटा () उदाहरण – MySQL

  3. MySQL वर्कबेंच का उपयोग करके एक नया डेटाबेस आरेख कैसे बनाएं

  4. कैसे नहीं REGEXP MySQL में काम करता है

  5. एसक्यूएल क्या है? एक डेटाबेस क्या है? रिलेशनल डेटाबेस मैनेजमेंट सिस्टम्स (RDBMS) को प्लेन इंग्लिश में समझाया गया।