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

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

समस्या:

आप उन पंक्तियों के समूह खोजना चाहते हैं जिनमें किसी स्तंभ में मानों का औसत किसी दिए गए मान से अधिक या कम हो।

उदाहरण:

हमारे डेटाबेस में product निम्नलिखित कॉलम में डेटा के साथ:id , name , grocery और price

<थ>नाम
आईडी किराने कीमत
1 दूध ग्रीन शॉप 2.34
2 रोटी क्लार्क किराना 3.56
3 रोटी सुपर मार्केट 4.15
4 दूध सुपर मार्केट 1.80
5 रोटी किराना अमांडा 2.26
6 दूध वायलेट किराना 3.45
7 दूध क्लार्क किराना 2.10
8 रोटी वायलेट किराना 2.55
9 दूध किराना अमांडा 1.95

आइए उन उत्पादों के नाम खोजें जिनमें किराने के सामान के बीच प्रत्येक उत्पाद की औसत कीमत 3.00 से अधिक है।

समाधान:

SELECT name, AVG(price)
FROM product
GROUP BY name
HAVING AVG(price)>3.00;

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

<थ>औसत
नाम
रोटी 3.13

चर्चा:

एग्रीगेट फ़ंक्शन का उपयोग करके रिकॉर्ड को फ़िल्टर करने के लिए, HAVING क्लॉज़ का उपयोग करें।

यहां हम कुल मूल्य की गणना करते हैं:प्रत्येक उत्पाद की औसत कीमत। एक को एक से अधिक पंसारी द्वारा बेचा जाता है; इसलिए प्रत्येक के लिए औसत मूल्य की गणना की जाती है (हमारे उदाहरण में, SELECT name, AVG(price) ) कुल फ़ंक्शन के अलावा, हम SELECT में कॉलम नाम का भी उपयोग करते हैं, इसलिए हमें इस कॉलम नाम के साथ GROUP BY का उपयोग करना चाहिए (GROUP BY name )

अंतिम चरण HAVING क्लॉज में कुल फ़ंक्शन का उपयोग कर रहा है। याद रखें कि HAVING को GROUP BY क्लॉज के बाद रखा जाना चाहिए। इसमें वह स्थिति होती है जो किसी दिए गए मान के साथ कुल फ़ंक्शन द्वारा लौटाए गए मान की तुलना करती है। ऊपर, यह 3.00 मान वाले उत्पाद का औसत मूल्य है (HAVING AVG(price)>3.00 ) इस प्रश्न में, हम जांचते हैं कि सभी किराने के सामान में प्रत्येक उत्पाद की औसत कीमत तीन से अधिक है या नहीं। क्वेरी ने केवल एक उत्पाद, ब्रेड प्रदर्शित किया, जिसकी औसत कीमत तीन से अधिक थी।


  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. एक ऑनलाइन सर्वेक्षण के लिए एक डेटाबेस मॉडल। भाग 3

  3. हुआवेई गॉसडीबी

  4. जब इसकी तत्काल

  5. विंडोज 10 के लिए ईज़ीसॉफ्ट रिलीज ओडीबीसी-ओडीबीसी ब्रिज