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

MySQL में CASE WHEN से खाली मान के लिए कस्टम नाम प्रदर्शित करें

MySQL में CASE WHEN स्टेटमेंट का उपयोग करके खाली स्ट्रिंग या NULL मान के लिए कस्टम डिफ़ॉल्ट नाम प्रदर्शित कर सकते हैं।

उदाहरण: खाली नाम के लिए 'Carol Taylor' दिखाएं

1. टेबल बनाएं

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

2. डेटा डालें (खाली स्ट्रिंग सहित)

mysql> INSERT INTO DemoTable VALUES('Chris');
mysql> INSERT INTO DemoTable VALUES('');      -- खाली स्ट्रिंग
mysql> INSERT INTO DemoTable VALUES('David');
mysql> INSERT INTO DemoTable VALUES('');      -- खाली स्ट्रिंग

3. CASE WHEN क्वेरी

mysql> SELECT CASE TRIM(IFNULL(Name, ''))
    ->     WHEN '' THEN 'Carol Taylor'
    ->     ELSE Name
    -> END AS Name
    -> FROM DemoTable;

4. परिणाम

+--------------+
| Name         |
+--------------+
| Chris        |
| Carol Taylor |
| David        |
| Carol Taylor |
+--------------+

फ़ंक्शन व्याख्या

  • IFNULL(Name, '') - NULL को खाली स्ट्रिंग में बदलता है
  • TRIM(...) - केवल स्पेस वाले स्ट्रिंग को खाली बनाता है
  • CASE WHEN '' THEN ... - खाली होने पर डिफ़ॉल्ट मान

सरल विकल्प: IF()

SELECT IF(TRIM(IFNULL(Name, '')) = '', 'Carol Taylor', Name) AS Name
FROM DemoTable;

COALESCE विकल्प (पहला गैर-NULL)

SELECT COALESCE(NULLIF(TRIM(Name), ''), 'Carol Taylor') AS Name
FROM DemoTable;

तुलना

विधिNULL हैंडलिंगस्पेस-ओनलीपठनीयता
CASE WHENIFNULL जरूरीTRIM से संभालअच्छी
IF()IFNULL जरूरीTRIM से संभालसरल
COALESCE+NULLIFस्वचालितTRIM से संभालसंक्षिप्त

उपयोग का मामला

  • रिपोर्ट में 'N/A', 'Unknown', 'Not Provided' दिखाना
  • निर्यात के लिए डेटा सफाई
  • UI प्रदर्शन के लिए डिफ़ॉल्ट मान
  1. - MySQL में IFNULL का उपयोग करके NULL मानों को 1 के रूप में प्रदर्शित/अपडेट करें

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

  1. - MySQL में GROUP BY DATE से विशिष्ट तारीख वाली पंक्तियां दिखाएं

    DATE() फ़ंक्शन से तारीख भाग के अनुसार समूहित करें डेटाइम कॉलम के केवल तारीख भाग के अनुसार पंक्तियों को समूहित करने के लिए GROUP BY DATE(कॉलम) का उपयोग करें। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable1996 ( ShippingDate datetime, CustomerName varchar(20) ); Query OK, 0 rows affected (

  1. Java में MySQL PreparedStatement का WHERE क्लॉज के साथ सही उपयोग Java में MySQL PreparedStatement का WHERE क्लॉज के साथ सही उपयोग

    PreparedStatement सिंटैक्स String query = select yourColumnName from yourTableName where name = ?; PreparedStatement ps = (PreparedStatement) con.prepareStatement(query); ps.setString(columnIndex, yourValue); टेबल और डेटा insert into demo37(name) values(John), (Bob), (John), (Chris), (David), (Jo