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

MySQL में छात्रों के विभिन्न विषयों के औसत अंक निकालकर केवल उच्चतम औसत प्रदर्शित करना

सबक्वेरी का उपयोग करके उच्चतम औसत अंक खोजना

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

mysql> CREATE TABLE DemoTable (
    StudentName VARCHAR(40),
    StudentMarks INT
);

रिकॉर्ड्स इन्सर्ट करें:

mysql> INSERT INTO DemoTable VALUES ('Adam', 56);
mysql> INSERT INTO DemoTable VALUES ('Chris', 78);
mysql> INSERT INTO DemoTable VALUES ('Adam', 89);
mysql> INSERT INTO DemoTable VALUES ('Robert', 98);
mysql> INSERT INTO DemoTable VALUES ('Chris', 65);
mysql> INSERT INTO DemoTable VALUES ('Robert', 34);

सभी रिकॉर्ड्स देखें:

mysql> SELECT * FROM DemoTable;

आउटपुट:

+-------------+--------------+
| StudentName | StudentMarks |
+-------------+--------------+
| Adam        | 56           |
| Chris       | 78           |
| Adam        | 89           |
| Robert      | 98           |
| Chris       | 65           |
| Robert      | 34           |
+-------------+--------------+

प्रत्येक छात्र के औसत अंक निकालकर केवल उच्चतम औसत प्रदर्शित करने के लिए क्वेरी:

mysql> SELECT MAX(avSal.StudentMarks)
    FROM (
        SELECT AVG(StudentMarks) AS StudentMarks
        FROM DemoTable
        GROUP BY StudentName
    ) AS avSal;

आउटपुट:

+-------------------------+
| MAX(avSal.StudentMarks) |
+-------------------------+
| 72.5000                 |
+-------------------------+

व्याख्या:

  1. आंतरिक सबक्वेरी GROUP BY StudentName का उपयोग करके प्रत्येक छात्र के औसत अंक निकालती है:
    • Adam: (56 + 89) / 2 = 72.5
    • Chris: (78 + 65) / 2 = 71.5
    • Robert: (98 + 34) / 2 = 66
  2. बाहरी क्वेरी MAX() फंक्शन का उपयोग करके इन औसतों में से उच्चतम (72.5) चुनती है।

नोट: यदि आप उस छात्र का नाम भी जानना चाहते हैं जिसका औसत सबसे अधिक है, तो आप इस क्वेरी को थोड़ा संशोधित कर सकते हैं।

  1. - MySQL में विशिष्ट मान को फिक्स करके बाकी पंक्तियाँ रैंडम क्रम में कैसे दिखाएं?

    MySQL में किसी विशिष्ट मान वाली पंक्ति को शीर्ष पर फिक्स करके, शेष पंक्तियों को रैंडम क्रम में प्रदर्शित करने के लिए, ORDER BY में बूलियन एक्सप्रेशन और RAND() का संयोजन उपयोग करें। उदाहरण: मान 40 को शीर्ष पर रखें, बाकी रैंडम डेमो टेबल बनाएं: mysql> CREATE TABLE DemoTable1921 (Number INT); डेट

  1. - MySQL में छात्र के अंकों को ग्रुप करके कुल अंक कैसे प्रदर्शित करें?

    MySQL में किसी कॉलम के मानों को ग्रुप करके एग्रीगेट फंक्शन (जैसे SUM()) लागू करने के लिए GROUP BY क्लॉज़ का उपयोग करें। यह प्रति छात्र कुल अंक, औसत, गिनती आदि निकालने का मानक तरीका है। उदाहरण: प्रति छात्र कुल अंक डेमो टेबल बनाएं: mysql> CREATE TABLE DemoTable1920 ( StudentName VARCHAR(20),

  1. - Java के साथ MySQL में वर्तमान तारीख में महीने जोड़ें

    सिंटैक्स String query = INSERT INTO yourTableName VALUES (CURDATE() + INTERVAL howManyMonths MONTH); उदाहरण वर्तमान तारीख: 2020-10-25 2 महीने जोड़ने के बाद: 2020-12-25 Java कोड 0) System.out.println(Record inserted successfully..Look into the database); else System.out.print