CONCAT और ROUND के साथ प्रतिशत गणना और % चिह्न जोड़ना
आइए पहले एक टेबल बनाते हैं:
mysql> CREATE TABLE DemoTable (
Marks INT
);
रिकॉर्ड्स इन्सर्ट करें (5 विषयों के अंक मानकर):
mysql> INSERT INTO DemoTable VALUES (88); mysql> INSERT INTO DemoTable VALUES (65); mysql> INSERT INTO DemoTable VALUES (98); mysql> INSERT INTO DemoTable VALUES (45); mysql> INSERT INTO DemoTable VALUES (67);
सभी रिकॉर्ड्स देखें:
mysql> SELECT * FROM DemoTable;
आउटपुट:
+-------+ | Marks | +-------+ | 88 | | 65 | | 98 | | 45 | | 67 | +-------+
5 विषयों के आधार पर प्रतिशत निकालकर % चिह्न जोड़ने के लिए क्वेरी:
mysql> SELECT CONCAT(ROUND(SUM(Marks) * 100 / 500), '%') FROM DemoTable;
आउटपुट:
+---------------------------------------+ | CONCAT(ROUND(SUM(Marks)*100/500),'%') | +---------------------------------------+ | 73% | +---------------------------------------+
व्याख्या:
- SUM(Marks): सभी अंकों का योग = 88 + 65 + 98 + 45 + 67 = 363
- * 100 / 500: प्रतिशत सूत्र (प्राप्त अंक / कुल अंक) × 100। 5 विषय × 100 अधिकतम = 500 कुल अंक
- 363 × 100 / 500 = 72.6
- ROUND(...): 72.6 को निकटतम पूर्णांक में राउंड करता है = 73
- CONCAT(..., '%'): संख्या के साथ '%' स्ट्रिंग जोड़ता है = '73%'
सामान्य सूत्र:
SELECT CONCAT(ROUND(SUM(Marks) * 100 / (COUNT(*) * 100)), '%') AS Percentage FROM DemoTable;
यह डायनामिकली विषयों की संख्या गिनता है (COUNT(*)) और मान लेता है कि प्रत्येक विषय 100 अंकों का है।
नोट: ROUND() डिफॉल्ट रूप से निकटतम पूर्णांक में राउंड करता है। दशमलव स्थानों के लिए: ROUND(value, 2) (2 दशमलव स्थान)।