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

MySQL में कॉलम के सकारात्मक और नकारात्मक मानों का योग अलग-अलग कॉलम में प्रदर्शित करें

इसके लिए CASE स्टेटमेंट का उपयोग करें। आइए पहले एक टेबल बनाते हैं:

mysql> create table DemoTable( 
    Id int, 
    Value int ); 
Query OK, 0 rows affected (0.51 sec)

इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें:

mysql> insert into DemoTable values(10,100); 
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable values(10,-110); 
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values(10,200); 
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values(10,-678); 
Query OK, 1 row affected (0.17 sec)

सेलेक्ट स्टेटमेंट का उपयोग करके टेबल से सभी रिकॉर्ड प्रदर्शित करें:

mysql> select * from DemoTable;

यह निम्नलिखित आउटपुट देगा:

+------+-------+
| Id   | Value |
+------+-------+
| 10   | 100   |
| 10   | -110  |
| 10   | 200   |
| 10   | -678  |
+------+-------+
4 rows in set (0.00 sec)

सकारात्मक और नकारात्मक मानों का योग अलग-अलग कॉलम में प्रदर्शित करने की क्वेरी

mysql> select Id, 
    sum(case when Value>0 then Value else 0 end) as Positive_Value, 
    sum(case when Value<0 then Value else 0 end) as Negative_Value 
    from DemoTable 
    group by Id;

यह निम्नलिखित आउटपुट देगा:

+------+----------------+----------------+
| Id   | Positive_Value | Negative_Value |
+------+----------------+----------------+
| 10   | 300            | -788           |
+------+----------------+----------------+
1 row in set (0.00 sec)

व्याख्या

  • CASE WHEN Value > 0 THEN Value ELSE 0 END - केवल सकारात्मक मान जोड़ता है, नकारात्मक को 0 मानता है
  • CASE WHEN Value < 0 THEN Value ELSE 0 END - केवल नकारात्मक मान जोड़ता है (ऋणात्मक चिह्न सहित)
  • GROUP BY Id - समान ID वाले रिकॉर्ड समूहित करता है

यह वित्तीय रिपोर्टिंग, खाता बही, आदि के लिए उपयोगी है।

  1. - MySQL में कॉलम मानों को अलग टेक्स्ट के साथ जोड़ें और एकल कॉलम में प्रदर्शित करें

    आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable -> ( -> Id int, -> Name varchar(20) -> ); Query OK, 0 rows affected (0.93 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysql> insert into DemoTable values(101,Chris); Query OK, 1 row affected (0.25 sec) mysq

  1. - MySQL में NULL और NOT NULL रिकॉर्ड वाले कॉलम से केवल NOT NULL मान प्रदर्शित करें

    इसके लिए आप IS NOT NULL प्रॉपर्टी का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable1 ( DueDate date ); Query OK, 0 rows affected (0.00 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysql> insert into DemoTable1 values(2019-09-10); Query OK, 1 r

  1. - MySQL में SUBSTRING_INDEX का उपयोग करके हाइफ़न से अलग स्ट्रिंग को कई कॉलम्स में विभाजित करें

    MySQL में SUBSTRING_INDEX का उपयोग करके विभाजक द्वारा स्ट्रिंग पार्सिंग MySQL का SUBSTRING_INDEX() फ़ंक्शन एक स्ट्रिंग को विभाजक द्वारा विभाजित करने और विशिष्ट भाग निकालने के लिए अत्यंत उपयोगी है। यह CSV-शैली डेटा या संयुक्त फ़ील्ड्स को पार्स करने के लिए आदर्श है। टेबल बनाना ); Query OK, 0 rows af