Database
 sql >> डेटाबेस >  >> RDS >> Database

एग्रीगेट फंक्शन SUM के साथ रिकॉर्ड्स को कैसे फ़िल्टर करें?

समस्या:

आपको उन पंक्तियों को खोजने की आवश्यकता है जिनमें समूहों के एक कॉलम में दिए गए मान से कम मानों का योग है।

उदाहरण:

हमारे डेटाबेस में company निम्नलिखित कॉलम में डेटा के साथ:id , department , first_name , last_name , और salary

<थ>प्रथम_नाम <थ>वेतन
आईडी विभाग last_name
1 विपणन लोरा भूरा 2300
2 वित्त जॉन जैक्सन 3200
3 विपणन माइकल थॉमसन 1270
4 उत्पादन टोनी मिलर 6500
5 उत्पादन सैली हरा 2500
6 वित्त ओलिवियर काला 3450
7 उत्पादन जेनिफर मिशेलिन 2800
8 विपणन जेरेमी लॉर्सन 3600
9 विपणन लुई स्मिथ 4200

आइए उन विभागों के नाम खोजें जिनके कर्मचारियों के वेतन का योग 7000 से कम है।

समाधान:

SELECT department, SUM(salary)
FROM company
GROUP BY department
HAVING SUM(salary)<7000;

ये रहा परिणाम:

विभाग योग
वित्त 6550

चर्चा:

एग्रीगेट फ़ंक्शन (पहले से फ़ंक्शन SUM) का उपयोग करके रिकॉर्ड फ़िल्टर करने के लिए, HAVING क्लॉज़ का उपयोग करें। पंक्तियों के प्रत्येक समूह के लिए मानों के योग की गणना करने के लिए, एकत्रीकरण SUM फ़ंक्शन का उपयोग करें। इस प्रश्न में, कॉलम विभाग की गणना एक समूह के रूप में अपने कर्मचारियों के सभी वेतनों के योग के साथ की जाती है (इसे एक तर्क के रूप में कॉलम वेतन के साथ SUM फ़ंक्शन के साथ गणना करें)। चूंकि आप पंक्तियों के प्रत्येक समूह के लिए मान की गणना करते हैं (हम विभाग के नाम के अनुसार पंक्तियों को समूहित करते हैं), क्वेरी में समूह पंक्तियों के नाम के साथ समूह द्वारा समूह होता है (हमारे उदाहरण में, GROUP BY department ) अंतिम चरण HAVING क्लॉज में कुल फ़ंक्शन का उपयोग कर रहा है। याद रखें, HAVING को GROUP BY क्लॉज के बाद रखा जाना चाहिए। HAVING में किसी दिए गए मान के साथ कुल फ़ंक्शन द्वारा लौटाए गए मान की तुलना करने की शर्त शामिल है। ऊपर से, यह 7000 से कम मान वाली वेतन राशि है (SUM(salary)<7000 ) यहां, हम सत्यापित करते हैं कि प्रत्येक विभाग में वेतन राशि 7000 से कम है। क्वेरी में केवल एक विभाग, वित्त, 6550 के वेतन के साथ प्रदर्शित होता है।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL में डुप्लिकेट पंक्तियों को कैसे हटाएं

  2. F# को Salesforce.com से कनेक्ट करना

  3. SQL SUM फ़ंक्शन का उपयोग कैसे करें

  4. PowerShell को Salesforce.com से कनेक्ट करना

  5. जावा से लोटस नोट्स से जुड़ना