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

खाली टेबल में SELECT MAX() से NULL परिणाम कैसे बचाएं

COALESCE() के साथ MAX() फ़ंक्शन का उपयोग

जब टेबल खाली हो या सभी मान NULL हों, तो MAX() फ़ंक्शन NULL लौटाता है। इसे रोकने के लिए COALESCE() फ़ंक्शन का उपयोग करें जो पहला नॉन-NULL मान लौटाता है।

सिंटैक्स

SELECT COALESCE(MAX(`yourColumnName`), 0) FROM yourTableName;

उदाहरण: टेबल बनाना और डेटा डालना

mysql> create table avoidNullDemo (
    -> `rank` int
    -> );
Query OK, 0 rows affected (0.53 sec)
mysql> insert into avoidNullDemo values(10);
mysql> insert into avoidNullDemo values(NULL);
mysql> insert into avoidNullDemo values(20);
mysql> insert into avoidNullDemo values(NULL);
mysql> insert into avoidNullDemo values(100);
mysql> insert into avoidNullDemo values(NULL);

डेटा देखना

mysql> select * from avoidNullDemo;

आउटपुट (NULL मानों के साथ):

+------+
| rank |
+------+
| 10   |
| NULL |
| 20   |
| NULL |
| 100  |
| NULL |
+------+
6 rows in set (0.00 sec)

NULL परिणाम से बचने के लिए क्वेरी

mysql> select COALESCE(MAX(`rank`), 0) FROM avoidNullDemo;

आउटपुट:

+--------------------------+
| COALESCE(MAX(`rank`), 0) |
+--------------------------+
| 100                      |
+--------------------------+
1 row in set (0.00 sec)

खाली टेबल के साथ परीक्षण

सभी रिकॉर्ड हटाने के बाद:

mysql> truncate table avoidNullDemo;
Query OK, 0 rows affected (0.92 sec)
mysql> select COALESCE(MAX(`rank`), 0) FROM avoidNullDemo;

आउटपुट:

+--------------------------+
| COALESCE(MAX(`rank`), 0) |
+--------------------------+
| 0                        |
+--------------------------+
1 row in set (0.00 sec)

मुख्य लाभ

  • खाली टेबल या ऑल-NULL कॉलम के लिए डिफ़ॉल्ट मान (0) मिलता है
  • एप्लिकेशन लेवल पर NULL चेक की आवश्यकता नहीं
  • एग्रीगेशन क्वेरीज़ में विश्वसनीय परिणाम सुनिश्चित करता है
  1. JavaScript के साथ टेबल में NULL मान डालने से बचें JavaScript के साथ टेबल में NULL मान डालने से बचें

    टेबल में डाले गए null मानों से छुटकारा पाने के लिए, मान दर्ज करते समय शर्त की जांच करने की आवश्यकता है। NULL जांचने की शर्त निम्नानुसार होनी चाहिए - while(!( yourVariableName1==null || yourVariableName2==null || yourVariableName3==null...)){ // yourStatement1 . . N } उपरोक्त लॉजिक

  1. - MySQL में कॉलम खाली या NULL है, कैसे जांचें?

    WHERE column IS NULL OR column = से दोनों कंडीशन चेक करें। उदाहरण CREATE TABLE ColumnValueNullDemo (ColumnName VARCHAR(100)); INSERT INTO ColumnValueNullDemo VALUES (); INSERT INTO ColumnValueNullDemo VALUES (); SELECT * FROM ColumnValueNullDemo WHERE ColumnName IS NULL OR ColumnName = ; आउटपुट

  1. MySQL से अंतिम 10 रो कैसे चुनें? MySQL से अंतिम 10 रो कैसे चुनें?

    MySQL से अंतिम 10 रो चुनने के लिए, हम SELECT स्टेटमेंट और LIMIT कॉन्सेप्ट के साथ सबक्वेरी का उपयोग कर सकते हैं। निम्न एक उदाहरण है। टेबल बनाना। mysql> create table Last10RecordsDemo -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (0.75 sec) टेबल में रिकॉर