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

MySQL में WITH ROLLUP मॉडिफायर का उपयोग क्या है?

WITH ROLLUP GROUP BY क्लॉज के साथ उपयोग होने वाला एक मॉडिफायर है जो सारांश पंक्तियां (सुपर-एग्रीगेट) जोड़ता है - उच्च-स्तरीय योग संचालन दर्शाने वाली अतिरिक्त पंक्तियां।

उदाहरण - ratelist टेबल:

mysql> Select Item, SUM(Price) AS Price from ratelist Group by item WITH ROLLUP;
+------+-------+
| Item | Price |
+------+-------+
| A    |  502  |
| B    |  630  |
| C    | 1005  |
| h    |  850  |
| T    |  250  |
| NULL |  3237 |
+------+-------+
6 rows in set (0.00 sec)

व्याख्या:

  • पहली 5 पंक्तियां: प्रत्येक Item के लिए SUM(Price)
  • अंतिम पंक्ति (NULL): सभी आइटम का कुल योग (ग्रैंड टोटल)
  • NULL ग्रुपिंग कॉलम में "सभी समूह" का प्रतिनिधित्व करता है

मल्टी-कॉलम GROUP BY के साथ:

SELECT year, quarter, SUM(sales) 
FROM sales_data 
GROUP BY year, quarter WITH ROLLUP;

यह प्रत्येक तिमाही का योग, प्रत्येक वर्ष का योग, और ग्रैंड टोटल - सभी एक क्वेरी में देता है।

NULL लेबल कस्टमाइज़ करना:

SELECT IFNULL(Item, 'TOTAL') as Item, SUM(Price) 
FROM ratelist GROUP BY Item WITH ROLLUP;

प्रतिबंध:

  • ORDER BY के साथ उपयोग नहीं कर सकते (परस्पर अनन्य)
  • LIMIT के साथ व्यवहार अप्रत्याशित हो सकता है
  • केवल GROUP BY के साथ काम करता है
  1. - MySQL ORDER BY क्लॉज का उपयोग क्या है?

    MySQL ORDER BY क्लॉज क्वेरी परिणाम पर क्रमबद्ध करने (सॉर्टिंग) के लिए उपयोग किया जाता है। ORDER BY कीवर्ड के बाद उस कॉलम का नाम लिखें जिसके आधार पर क्रमबद्ध करना है। उदाहरण - ratelist टेबल: Select * from ratelist; +----+------+-------+ | Sr | Item | Price | +----+------+-------+ | 1 | A | 502

  1. - MySQL IGNORE INSERT स्टेटमेंट का क्या उपयोग है?

    मूल रूप से, IGNORE INSERT स्टेटमेंट का उपयोग MySQL तालिका में डुप्लिकेट डेटा के सम्मिलन को रोकने के लिए किया जाता है। यदि हम INSERT कमांड के बजाय INSERT IGNORE कमांड का उपयोग करेंगे तो यदि कोई रिकॉर्ड मौजूदा रिकॉर्ड को डुप्लिकेट नहीं करता है, तो MySQL इसे हमेशा की तरह सम्मिलित करता है लेकिन यदि रिकॉ

  1. - MySQL में WITH ROLLUP का सही उपयोग कैसे करें

    WITH ROLLUP के साथ योग और कुल योग प्राप्त करना WITH ROLLUP का सिंटैक्स: select yourColumnName1, sum(yourColumnName2) from yourTableName group by yourColumnName1 with rollup; पहले टेबल बनाएं: create table DemoTable1622 ( EmployeeCountryName varchar(20), EmployeeSalary int ); Query OK, 0 rows affecte